diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/af.json b/src/gui/qt-daemon/html_source/src/assets/i18n/af.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/af.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ar.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ar.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ar.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ca.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ca.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ca.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/cs.json b/src/gui/qt-daemon/html_source/src/assets/i18n/cs.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/cs.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/da.json b/src/gui/qt-daemon/html_source/src/assets/i18n/da.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/da.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/de.json b/src/gui/qt-daemon/html_source/src/assets/i18n/de.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/de.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/el.json b/src/gui/qt-daemon/html_source/src/assets/i18n/el.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/el.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/en.json b/src/gui/qt-daemon/html_source/src/assets/i18n/en.json
index 47e688ec..62fab79d 100644
--- a/src/gui/qt-daemon/html_source/src/assets/i18n/en.json
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/en.json
@@ -1,5 +1,5 @@
{
- "LOGIN" : {
+ "LOGIN": {
"SETUP_MASTER_PASS": "Setup master password",
"SETUP_CONFIRM_PASS": "Confirm the password",
"MASTER_PASS": "Master password",
@@ -124,8 +124,8 @@
},
"SEED_PHRASE": {
"TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
- "BUTTON_CREATE_ACCOUNT" : "Create wallet",
- "BUTTON_COPY" : "Copy"
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
},
"PROGRESS": {
"ADD_WALLET": "Add wallet",
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/es.json b/src/gui/qt-daemon/html_source/src/assets/i18n/es.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/es.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/fi.json b/src/gui/qt-daemon/html_source/src/assets/i18n/fi.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/fi.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/fr.json b/src/gui/qt-daemon/html_source/src/assets/i18n/fr.json
index 63275d82..62fab79d 100644
--- a/src/gui/qt-daemon/html_source/src/assets/i18n/fr.json
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/fr.json
@@ -1,15 +1,524 @@
{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
"SIDEBAR": {
- "TITLE": "Accounts2",
- "ADD_NEW": "+ Add new2",
- "SETTINGS": "Settings2",
- "LOG_OUT": "Log out2"
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
},
"MAIN": {
- "TITLE": "Create or open the wallet to start using Zano2",
- "BUTTON_NEW_WALLET": "Create new wallet2",
- "BUTTON_OPEN_WALLET": "Open existing wallet2",
- "BUTTON_RESTORE_BACKUP": "Restore from backup2",
- "HELP": "How to create wallet?2"
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
}
}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/he.json b/src/gui/qt-daemon/html_source/src/assets/i18n/he.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/he.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/hu.json b/src/gui/qt-daemon/html_source/src/assets/i18n/hu.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/hu.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/it.json b/src/gui/qt-daemon/html_source/src/assets/i18n/it.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/it.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ja.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ja.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ja.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ko.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ko.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ko.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/nl.json b/src/gui/qt-daemon/html_source/src/assets/i18n/nl.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/nl.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/no.json b/src/gui/qt-daemon/html_source/src/assets/i18n/no.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/no.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/pl.json b/src/gui/qt-daemon/html_source/src/assets/i18n/pl.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/pl.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/pt.json b/src/gui/qt-daemon/html_source/src/assets/i18n/pt.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/pt.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ro.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ro.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ro.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/ru.json b/src/gui/qt-daemon/html_source/src/assets/i18n/ru.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/ru.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/sr.json b/src/gui/qt-daemon/html_source/src/assets/i18n/sr.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/sr.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/sv.json b/src/gui/qt-daemon/html_source/src/assets/i18n/sv.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/sv.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/tr.json b/src/gui/qt-daemon/html_source/src/assets/i18n/tr.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/tr.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/uk.json b/src/gui/qt-daemon/html_source/src/assets/i18n/uk.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/uk.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/vi.json b/src/gui/qt-daemon/html_source/src/assets/i18n/vi.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/vi.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}
diff --git a/src/gui/qt-daemon/html_source/src/assets/i18n/zh.json b/src/gui/qt-daemon/html_source/src/assets/i18n/zh.json
new file mode 100644
index 00000000..62fab79d
--- /dev/null
+++ b/src/gui/qt-daemon/html_source/src/assets/i18n/zh.json
@@ -0,0 +1,524 @@
+{
+ "LOGIN": {
+ "SETUP_MASTER_PASS": "Setup master password",
+ "SETUP_CONFIRM_PASS": "Confirm the password",
+ "MASTER_PASS": "Master password",
+ "BUTTON_NEXT": "Next",
+ "BUTTON_SKIP": "Skip",
+ "INCORRECT_PASSWORD": "Invalid password",
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "CONFIRM_REQUIRED": "Confirmation is required",
+ "MISMATCH": "Mismatch"
+ }
+ },
+ "COMMON": {
+ "BACK": "Go back"
+ },
+ "BREADCRUMBS": {
+ "ADD_WALLET": "Add wallet",
+ "CREATE_WALLET": "Create new wallet",
+ "SAVE_PHRASE": "Save your seed phrase",
+ "OPEN_WALLET": "Open existing wallet",
+ "RESTORE_WALLET": "Restore from backup",
+ "WALLET_DETAILS": "Wallet details",
+ "ASSIGN_ALIAS": "Assign alias",
+ "EDIT_ALIAS": "Edit alias",
+ "TRANSFER_ALIAS": "Transfer alias",
+ "CONTRACTS": "Contracts",
+ "NEW_PURCHASE": "New purchase",
+ "OLD_PURCHASE": "Purchase"
+ },
+ "SIDEBAR": {
+ "TITLE": "Wallets",
+ "ADD_NEW": "+ Add",
+ "ACCOUNT": {
+ "STAKING": "Staking",
+ "MESSAGES": "New offers/Messages",
+ "SYNCING": "Syncing wallet"
+ },
+ "SETTINGS": "Settings",
+ "LOG_OUT": "Log out",
+ "SYNCHRONIZATION": {
+ "OFFLINE": "Offline",
+ "ONLINE": "Online",
+ "ERROR": "System error",
+ "COMPLETE": "Completion",
+ "SYNCING": "Syncing blockchain",
+ "LOADING": "Loading blockchain data"
+ },
+ "UPDATE": {
+ "STANDARD": "Update available",
+ "STANDARD_TOOLTIP": "Get new update.
Update is recommended!",
+ "IMPORTANT": "Update available",
+ "IMPORTANT_HINT": "Important update!",
+ "IMPORTANT_TOOLTIP": "Get new update.
Important update!",
+ "CRITICAL": "Update available",
+ "CRITICAL_HINT": "Critical update!",
+ "CRITICAL_TOOLTIP": "Critical update available.Update strongly recommended!",
+ "TIME": "System time differs from network",
+ "TIME_TOOLTIP": "Wrong system time!
Check and repair your system time."
+ }
+ },
+ "MAIN": {
+ "TITLE": "Create or open the wallet to start using Zano",
+ "BUTTON_NEW_WALLET": "Create new wallet",
+ "BUTTON_OPEN_WALLET": "Open existing wallet",
+ "BUTTON_RESTORE_BACKUP": "Restore from backup",
+ "HELP": "How to create wallet?",
+ "CHOOSE_PATH": "Please choose a path"
+ },
+ "CREATE_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Set wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "TITLE_SAVE": "Save the wallet file.",
+ "ERROR_CANNOT_SAVE_TOP": "Existing wallet files cannot be replaced or overwritten",
+ "ERROR_CANNOT_SAVE_SYSTEM": "Wallet files cannot be saved to the OS partition",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ }
+ },
+ "OPEN_WALLET": {
+ "NAME": "Wallet name",
+ "PASS": "Wallet password",
+ "BUTTON": "Open wallet",
+ "WITH_ADDRESS_ALREADY_OPEN": "A wallet with this address is already open",
+ "FILE_NOT_FOUND1": "Wallet file not found",
+ "FILE_NOT_FOUND2": "
It might have been renamed or moved.
To open it, use the \"Open wallet\" button.",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ },
+ "MODAL": {
+ "TITLE": "Type wallet password",
+ "LABEL": "Password to this wallet",
+ "OPEN": "Open wallet",
+ "SKIP": "Skip",
+ "NOT_FOUND": "Not found"
+ }
+ },
+ "RESTORE_WALLET": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_PHRASE_KEY": "Seed phrase / private key",
+ "PASS": "Wallet password",
+ "CONFIRM": "Confirm wallet password",
+ "BUTTON_SELECT": "Select wallet location",
+ "BUTTON_CREATE": "Create wallet",
+ "NOT_CORRECT_FILE_OR_PASSWORD": "Invalid wallet file or password does not match",
+ "CHOOSE_PATH": "Please choose a path",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached",
+ "CONFIRM_NOT_MATCH": "Confirm password not match",
+ "KEY_REQUIRED": "Key is required",
+ "KEY_NOT_VALID": "Key not valid"
+ }
+ },
+ "SEED_PHRASE": {
+ "TITLE": "Make sure to keep your seed phrase in a safe place. If you forget your seed phrase you will not be able to recover your wallet.",
+ "BUTTON_CREATE_ACCOUNT": "Create wallet",
+ "BUTTON_COPY": "Copy"
+ },
+ "PROGRESS": {
+ "ADD_WALLET": "Add wallet",
+ "SELECT_LOCATION": "Select wallet location",
+ "CREATE_WALLET": "Create new wallet",
+ "RESTORE_WALLET": "Restore from backup"
+ },
+ "SETTINGS": {
+ "TITLE": "Settings",
+ "DARK_THEME": "Dark theme",
+ "WHITE_THEME": "White theme",
+ "GRAY_THEME": "Grey theme",
+ "APP_LOCK": {
+ "TITLE": "Lock app after:",
+ "TIME1": "5 min",
+ "TIME2": "15 min",
+ "TIME3": "1 hour",
+ "TIME4": "Never"
+ },
+ "MASTER_PASSWORD": {
+ "TITLE": "Update master password",
+ "OLD": "Old password",
+ "NEW": "New password",
+ "CONFIRM": "New password confirmation",
+ "BUTTON": "Save"
+ },
+ "FORM_ERRORS": {
+ "PASS_REQUIRED": "Password is required",
+ "PASS_NOT_MATCH": "Old password not match",
+ "CONFIRM_NOT_MATCH": "Confirm password not match"
+ },
+ "LAST_BUILD": "Current build: {{value}}",
+ "APP_LOG_TITLE": "Log level:"
+ },
+ "WALLET": {
+ "REGISTER_ALIAS": "Register an alias",
+ "DETAILS": "Details",
+ "LOCK": "Lock",
+ "AVAILABLE_BALANCE": "Available {{available}} {{currency}}",
+ "LOCKED_BALANCE": "Locked {{locked}} {{currency}}",
+ "LOCKED_BALANCE_LINK": "What does that mean?",
+ "TABS": {
+ "SEND": "Send",
+ "RECEIVE": "Receive",
+ "HISTORY": "History",
+ "CONTRACTS": "Contracts",
+ "MESSAGES": "Messages",
+ "STAKING": "Staking"
+ }
+ },
+ "WALLET_DETAILS": {
+ "LABEL_NAME": "Wallet name",
+ "LABEL_FILE_LOCATION": "Wallet file location",
+ "LABEL_SEED_PHRASE": "Seed phrase",
+ "SEED_PHRASE_HINT": "Click to reveal the seed phrase",
+ "BUTTON_SAVE": "Save",
+ "BUTTON_REMOVE": "Close wallet",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_DUPLICATE": "Name is duplicate",
+ "MAX_LENGTH": "Maximum name length reached"
+ }
+ },
+ "ASSIGN_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias",
+ "TOOLTIP": "An alias is a shortened form or your account. An alias can only include Latin letters, numbers and characters “.” and “-”. It must start with “@”."
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment",
+ "TOOLTIP": "The comment will be visible to anyone who wants to make a payment to your alias. You can provide details about your business, contacts, or include any text. Comments can be edited later."
+ },
+ "COST": "Cost to create alias {{value}} {{currency}}",
+ "BUTTON_ASSIGN": "Assign",
+ "BUTTON_CANCEL": "Cancel",
+ "FORM_ERRORS": {
+ "NAME_REQUIRED": "Name is required",
+ "NAME_WRONG": "Alias has wrong name",
+ "NAME_LENGTH": "The alias must be 6-25 characters long",
+ "NAME_EXISTS": "Alias name already exists",
+ "NO_MONEY": "You do not have enough funds to assign this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "ONE_ALIAS": "You can create only one alias per wallet",
+ "REQUEST_ADD_REG": "The alias will be assigned within 10 minutes"
+ },
+ "EDIT_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "FORM_ERRORS": {
+ "NO_MONEY": "You do not have enough funds to change the comment to this alias",
+ "MAX_LENGTH": "Maximum comment length reached"
+ },
+ "COST": "Cost to edit alias {{value}} {{currency}}",
+ "BUTTON_EDIT": "Edit",
+ "BUTTON_CANCEL": "Cancel"
+ },
+ "TRANSFER_ALIAS": {
+ "NAME": {
+ "LABEL": "Unique name",
+ "PLACEHOLDER": "@ Enter alias"
+ },
+ "COMMENT": {
+ "LABEL": "Comment",
+ "PLACEHOLDER": "Enter comment"
+ },
+ "ADDRESS": {
+ "LABEL": "The account to which the alias will be transferred",
+ "PLACEHOLDER": "Enter wallet address"
+ },
+ "FORM_ERRORS": {
+ "WRONG_ADDRESS": "No wallet with this account exists",
+ "ALIAS_EXISTS": "This account already has an alias",
+ "NO_MONEY": "You do not have enough funds to transfer this alias"
+ },
+ "COST": "Cost to transfer alias {{value}} {{currency}}",
+ "BUTTON_TRANSFER": "Transfer",
+ "BUTTON_CANCEL": "Cancel",
+ "REQUEST_SEND_REG": "The alias will be transferred within 10 minutes"
+ },
+ "SEND": {
+ "ADDRESS": "Address",
+ "AMOUNT": "Amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "MIXIN": "Mixin",
+ "FEE": "Fee",
+ "HIDE": "Hide your wallet address from recipient",
+ "BUTTON": "Send",
+ "SUCCESS_SENT": "Transaction sent",
+ "FORM_ERRORS": {
+ "ADDRESS_REQUIRED": "Address is required",
+ "ADDRESS_NOT_VALID": "Address not valid",
+ "ALIAS_NOT_VALID": "Alias not valid",
+ "AMOUNT_REQUIRED": "Amount is required",
+ "AMOUNT_ZERO": "Amount is zero",
+ "FEE_REQUIRED": "Fee is required",
+ "FEE_MINIMUM": "Minimum fee: {{fee}}",
+ "MAX_LENGTH": "Maximum comment length reached"
+ }
+ },
+ "HISTORY": {
+ "STATUS": "Status",
+ "STATUS_TOOLTIP": "Confirmations {{current}}/{{total}}",
+ "LOCK_TOOLTIP": "Locked till {{date}}",
+ "SEND": "Sent",
+ "RECEIVED": "Received",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "FEE": "Fee",
+ "ADDRESS": "Address",
+ "DETAILS": {
+ "PAYMENT_ID": "Payment ID",
+ "ID": "Transaction ID",
+ "SIZE": "Transaction size",
+ "SIZE_VALUE": "{{value}} bytes",
+ "HEIGHT": "Height",
+ "CONFIRMATION": "Confirmation",
+ "INPUTS": "Inputs",
+ "OUTPUTS": "Outputs",
+ "COMMENT": "Comment"
+ },
+ "TYPE_MESSAGES": {
+ "HIDDEN": "hidden",
+ "UNDEFINED": "Undefined",
+ "COMPLETE_BUYER": "Contract completed",
+ "COMPLETE_SELLER": "Contract completed",
+ "CREATE_ALIAS": "Fee for assigning alias",
+ "UPDATE_ALIAS": "Fee for editing alias",
+ "POW_REWARD": "POW reward",
+ "POS_REWARD": "POS reward",
+ "CREATE_CONTRACT": "Contract proposal",
+ "PLEDGE_CONTRACT": "Contract deposit",
+ "NULLIFY_CONTRACT": "Burn deposits",
+ "PROPOSAL_CANCEL_CONTRACT": "Cancellation request",
+ "CANCEL_CONTRACT": "Cancel and return deposits"
+ }
+ },
+ "CONTRACTS": {
+ "EMPTY": "No active contracts",
+ "CONTRACTS": "Contracts",
+ "PURCHASE": "Purchase",
+ "SELL": "Sell",
+ "DATE": "Date",
+ "AMOUNT": "Amount",
+ "STATUS": "Status",
+ "COMMENTS": "Comments",
+ "PURCHASE_BUTTON": "New Purchase",
+ "LISTING_BUTTON": "Create listing",
+ "TIME_LEFT": {
+ "REMAINING_LESS_ONE": "Less than an hour to respond",
+ "REMAINING_ONE": "{{time}} hour remains",
+ "REMAINING_MANY": "{{time}} hours remain",
+ "REMAINING_MANY_ALT": "{{time}} hours remain",
+ "REMAINING_ONE_RESPONSE": "{{time}} hour remains",
+ "REMAINING_MANY_RESPONSE": "{{time}} hours remain",
+ "REMAINING_MANY_ALT_RESPONSE": "{{time}} hours remain",
+ "REMAINING_ONE_WAITING": "Waiting for {{time}} hour",
+ "REMAINING_MANY_WAITING": "Waiting for {{time}} hours",
+ "REMAINING_MANY_ALT_WAITING": "Waiting for {{time}} hours"
+ },
+ "STATUS_MESSAGES": {
+ "SELLER": {
+ "NEW_CONTRACT": "New contract proposal",
+ "IGNORED": "You ignored contract proposal",
+ "ACCEPTED": "Contract started",
+ "WAIT": "Waiting for contract confirmation",
+ "WAITING_BUYER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "PROPOSAL_CANCEL": "New proposal to cancel contract and return deposits",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "You ignored cancellation proposal",
+ "EXPIRED": "Contract proposal has expired"
+ },
+ "BUYER": {
+ "WAITING": "Waiting for response",
+ "IGNORED": "Seller ignored your contract proposal",
+ "ACCEPTED": "Seller accepted your contract proposal",
+ "WAIT": "Waiting for deposits confirmation",
+ "WAITING_SELLER": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned",
+ "WAITING_CANCEL": "Waiting for contract cancellation",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "CANCELLED": "Contract canceled",
+ "IGNORED_CANCEL": "The seller ignored your proposal to cancel the contract",
+ "EXPIRED": "The contract proposal has expired"
+ }
+ }
+ },
+ "PURCHASE": {
+ "DESCRIPTION": "Description",
+ "SELLER": "Seller",
+ "AMOUNT": "Amount",
+ "YOUR_DEPOSIT": "Your deposit",
+ "SELLER_DEPOSIT": "Seller deposit",
+ "BUYER_DEPOSIT": "Buyer deposit",
+ "SAME_AMOUNT": "Same amount",
+ "COMMENT": "Comment",
+ "DETAILS": "Additional details",
+ "SEND_BUTTON": "Send",
+ "FORM_ERRORS": {
+ "DESC_REQUIRED": "Description required",
+ "DESC_MAXIMUM": "Maximum field length reached",
+ "SELLER_REQUIRED": "Address required",
+ "SELLER_NOT_VALID": "Invalid address",
+ "ALIAS_NOT_VALID": "Invalid alias",
+ "AMOUNT_REQUIRED": "Amount required",
+ "AMOUNT_ZERO": "Amount cannot be zero",
+ "YOUR_DEPOSIT_REQUIRED": "Deposit required",
+ "SELLER_DEPOSIT_REQUIRED": "Seller deposit required",
+ "SELLER_SAME": "Use separate account",
+ "COMMENT_MAXIMUM": "Maximum field length reached"
+ },
+ "PROGRESS_NEW": "New purchase",
+ "PROGRESS_WAIT": "Awaiting reply",
+ "PROGRESS_RECEIVE": "Reply received",
+ "PROGRESS_COMPLETE": "Completed",
+ "FEE": "Fee",
+ "PAYMENT": "Payment ID",
+ "STATUS_MESSAGES": {
+ "NEW_PURCHASE": "New purchase",
+ "WAITING_SELLER": "Waiting for response",
+ "WAITING_BUYER": "Contract proposal received",
+ "WAITING_CONFIRMATION": "Waiting for deposits confirmation",
+ "WAITING_DELIVERY": "Waiting for delivery",
+ "COMPLETED": "Contract completed",
+ "IGNORED_BUYER": "Contract proposal ignored",
+ "IGNORED_SELLER": "The seller ignored your contract proposal",
+ "PROPOSAL_CANCEL_SELLER": "Cancellation request sent",
+ "PROPOSAL_CANCEL_BUYER": "Cancellation request received",
+ "BEING_CANCELLED": "Cancellation in progress",
+ "IGNORED_CANCEL_SELLER": "The seller ignored your proposal to cancel the contract",
+ "IGNORED_CANCEL_BUYER": "Contract cancellation proposal ignored",
+ "CANCELLED": "Contract canceled",
+ "EXPIRED": "Contract proposal expired",
+ "NOT_RECEIVED": "Delivery failed",
+ "NULLIFIED": "All deposits burned"
+ },
+ "ACCEPT_STATE_WAIT_BIG": "Contract started",
+ "IGNORED_ACCEPT": "Contract proposal ignored",
+ "BURN_PROPOSAL": "Deposits burned",
+ "SUCCESS_FINISH_PROPOSAL": "Contract completed",
+ "SEND_CANCEL_PROPOSAL": "Cancellation request sent",
+ "IGNORED_CANCEL": "Contract cancellation proposal ignored",
+ "DEALS_CANCELED_WAIT": "Cancellation in progress",
+ "WAITING_TIME": "Response time",
+ "NEED_MONEY": "Insufficient funds",
+ "BUTTON_MAKE_PLEDGE": "Accept and make deposit",
+ "BUTTON_IGNORE": "Ignore and hide offer",
+ "BUTTON_NULLIFY": "Terminate and burn deposits",
+ "BUTTON_RECEIVED": "Complete and release deposits",
+ "BUTTON_CANCEL_BUYER": "Cancel and return deposits",
+ "BUTTON_NOT_CANCEL": "Ignore request",
+ "BUTTON_CANCEL_SELLER": "Confirm and return deposits",
+ "HOUR": "hour",
+ "HOURS": "hours",
+ "CANCEL": "Cancel",
+ "NULLIFY_QUESTION": "Are you sure you want to burn both deposits?",
+ "BUTTON_NULLIFY_SHORT": "Burn",
+ "WAITING_TIME_QUESTION": "Are you sure you want to cancel the contract?"
+ },
+ "MESSAGES": {
+ "ADDRESS": "Address",
+ "MESSAGE": "Message",
+ "SEND_PLACEHOLDER": "Type a message...",
+ "SEND_BUTTON": "Send"
+ },
+ "MODALS": {
+ "ERROR": "Error",
+ "SUCCESS": "Success",
+ "INFO": "Information",
+ "OK": "OK"
+ },
+ "STAKING": {
+ "TITLE": "Staking",
+ "TITLE_PENDING": "Pending",
+ "TITLE_TOTAL": "Total",
+ "TITLE_PERIOD": "Time period:",
+ "PERIOD": {
+ "WEEK1": "1 week",
+ "WEEK2": "2 week",
+ "MONTH1": "1 month",
+ "MONTH3": "3 month",
+ "MONTH6": "6 month",
+ "YEAR": "1 year",
+ "ALL": "All"
+ },
+ "TITLE_GROUP": "Group:",
+ "GROUP": {
+ "DAY": "day",
+ "WEEK": "week",
+ "MONTH": "month"
+ },
+ "SWITCH": {
+ "ON": "ON",
+ "OFF": "OFF"
+ }
+ },
+ "ERRORS": {
+ "NO_MONEY": "Not enough money",
+ "NOT_ENOUGH_MONEY": "Insufficient funds in account",
+ "CORE_BUSY": "Internal error: core is busy",
+ "DAEMON_BUSY": "Internal error: daemon is busy",
+ "NO_MONEY_REMOVE_OFFER": "There is no fee for deleting an offer, but in order to protect the network against flood transactions you need to have at least {{fee}} {{currency}} in your wallet",
+ "NOT_ENOUGH_OUTPUTS_TO_MIX": "Mix-in number is too big for current blockchain state. There are not enough unspent outputs to mix with",
+ "TRANSACTION_IS_TO_BIG": "Transaction exceeds network limit, send required amount with multiple transactions",
+ "TRANSFER_ATTEMPT": "There is no connection to Zano network",
+ "ACCESS_DENIED": "Access denied",
+ "TRANSACTION_ERROR": "Error. Transaction not completed.",
+ "BAD_ARG": "Invalid argument",
+ "WALLET_WRONG_ID": "Invalid wallet ID",
+ "WRONG_PASSWORD": "Invalid password",
+ "FILE_RESTORED": "The wallet file was corrupted. We have recovered the keys and the wallet from the blockchain",
+ "FILE_NOT_FOUND": "File not found",
+ "FILE_EXIST": "A file with that name already exists. Enter another name to save the file under",
+ "FILE_NOT_SAVED": "You cannot save a wallet file in this folder. Please choose another folder.",
+ "TX_TYPE_NORMAL": "Error. The payment from the wallet",
+ "TX_TYPE_NORMAL_TO": "to",
+ "TX_TYPE_NORMAL_END": "was not completed.",
+ "TX_TYPE_NEW_ALIAS": "Error. Failed to register alias to safe",
+ "TX_TYPE_NEW_ALIAS_END": "Please try again.",
+ "TX_TYPE_UPDATE_ALIAS": "Error. Failed to change comment to alias in safe",
+ "TX_TYPE_COIN_BASE": "Error. The payment was not completed."
+ },
+ "CONTEXT_MENU": {
+ "COPY": "copy",
+ "PASTE": "paste",
+ "SELECT": "select all"
+ },
+ "BACKEND_LOCALIZATION": {
+ "QUIT": "Quit",
+ "IS_RECEIVED": "",
+ "IS_CONFIRMED": "",
+ "INCOME_TRANSFER_UNCONFIRMED": "Incoming payment (not confirmed)",
+ "INCOME_TRANSFER_CONFIRMED": "Payment received",
+ "MINED": "Mined",
+ "LOCKED": "Blocked",
+ "IS_MINIMIZE": "Zano application is minimized to the system tray",
+ "RESTORE": "You can recover it by clicking or using the context menu",
+ "TRAY_MENU_SHOW": "Resize",
+ "TRAY_MENU_MINIMIZE": "Minimize"
+ }
+}