mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Display alert when trying to send funds to yourself
This commit is contained in:
parent
95964c993a
commit
40e7a9ded3
@ -4823,6 +4823,9 @@ Any member of this group will be able to see messages in the channel.";
|
||||
"Wallet.Send.ConfirmationText" = "Do you want to send **%1$@** Grams to\n%2$@?\n\nFees: ~%3$@ grams";
|
||||
"Wallet.Send.ConfirmationConfirm" = "Confirm";
|
||||
"Wallet.Send.Send" = "Send";
|
||||
"Wallet.Send.OwnAddressAlertTitle" = "Warning";
|
||||
"Wallet.Send.OwnAddressAlertText" = "Sending Grams from a wallet to the same wallet doesn't make sense, you will simply waste a portion of the value on blockchain fees.";
|
||||
"Wallet.Send.OwnAddressAlertProceed" = "Proceed";
|
||||
"Wallet.Settings.Title" = "Wallet Settings";
|
||||
"Wallet.Settings.Configuration" = "Configuration";
|
||||
"Wallet.Settings.BackupWallet" = "Backup Wallet";
|
||||
|
@ -57,6 +57,9 @@
|
||||
"Wallet.Send.ConfirmationText" = "Do you want to send **%1$@** Grams to\n%2$@?\n\nFees: ~%3$@ grams";
|
||||
"Wallet.Send.ConfirmationConfirm" = "Confirm";
|
||||
"Wallet.Send.Send" = "Send";
|
||||
"Wallet.Send.OwnAddressAlertTitle" = "Warning";
|
||||
"Wallet.Send.OwnAddressAlertText" = "Sending Grams from a wallet to the same wallet doesn't make sense, you will simply waste a portion of the value on blockchain fees.";
|
||||
"Wallet.Send.OwnAddressAlertProceed" = "Proceed";
|
||||
"Wallet.Settings.Title" = "Wallet Settings";
|
||||
"Wallet.Settings.Configuration" = "Configuration";
|
||||
"Wallet.Settings.BackupWallet" = "Backup Wallet";
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -702,7 +702,7 @@ public enum PresentationThemeKeyboardColor: Int32 {
|
||||
public var keyboardAppearance: UIKeyboardAppearance {
|
||||
switch self {
|
||||
case .light:
|
||||
return .default
|
||||
return .light
|
||||
case .dark:
|
||||
return .dark
|
||||
}
|
||||
|
Binary file not shown.
Binary file not shown.
@ -344,121 +344,142 @@ public func walletSendScreen(context: WalletContext, randomId: Int64, walletInfo
|
||||
}))
|
||||
})
|
||||
}, proceed: {
|
||||
let presentationData = context.presentationData
|
||||
let state = stateValue.with { $0 }
|
||||
let amount = amountValue(state.amount)
|
||||
let commentData = state.comment.data(using: .utf8)
|
||||
let formattedAddress = String(state.address[state.address.startIndex..<state.address.index(state.address.startIndex, offsetBy: walletAddressLength / 2)] + " \n " + state.address[state.address.index(state.address.startIndex, offsetBy: walletAddressLength / 2)..<state.address.endIndex])
|
||||
let destinationAddress = state.address
|
||||
|
||||
updateState { state in
|
||||
var state = state
|
||||
state.amount = formatBalanceText(amount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator)
|
||||
return state
|
||||
}
|
||||
|
||||
let controller = OverlayStatusController(theme: presentationData.theme, type: .loading(cancelled: nil))
|
||||
presentControllerImpl?(controller, nil)
|
||||
|
||||
let _ = (verifySendGramsRequestAndEstimateFees(tonInstance: context.tonInstance, walletInfo: walletInfo, toAddress: destinationAddress, amount: amount, textMessage: commentData ?? Data(), timeout: 0)
|
||||
|> deliverOnMainQueue).start(next: { [weak controller] fees in
|
||||
controller?.dismiss()
|
||||
|
||||
let proceed: () -> Void = {
|
||||
let presentationData = context.presentationData
|
||||
let state = stateValue.with { $0 }
|
||||
let amount = amountValue(state.amount)
|
||||
let commentData = state.comment.data(using: .utf8)
|
||||
let formattedAddress = String(state.address[state.address.startIndex..<state.address.index(state.address.startIndex, offsetBy: walletAddressLength / 2)] + " \n " + state.address[state.address.index(state.address.startIndex, offsetBy: walletAddressLength / 2)..<state.address.endIndex])
|
||||
let destinationAddress = state.address
|
||||
|
||||
let title = NSAttributedString(string: presentationData.strings.Wallet_Send_Confirmation, font: Font.semibold(17.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
|
||||
let feeAmount = fees.inFwdFee + fees.storageFee + fees.gasFee + fees.fwdFee
|
||||
|
||||
let (text, ranges) = presentationData.strings.Wallet_Send_ConfirmationText(formatBalanceText(amount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator), formattedAddress, "\(formatBalanceText(feeAmount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator))")
|
||||
let bodyAttributes = MarkdownAttributeSet(font: Font.regular(13.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
let boldAttributes = MarkdownAttributeSet(font: Font.semibold(13.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
let attributedText = NSMutableAttributedString(attributedString: parseMarkdownIntoAttributedString(text, attributes: MarkdownAttributes(body: bodyAttributes, bold: boldAttributes, link: bodyAttributes, linkAttribute: { _ in return nil }), textAlignment: .center))
|
||||
for (index, range) in ranges {
|
||||
if index == 1 {
|
||||
attributedText.addAttribute(.font, value: Font.monospace(14.0), range: range)
|
||||
}
|
||||
updateState { state in
|
||||
var state = state
|
||||
state.amount = formatBalanceText(amount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator)
|
||||
return state
|
||||
}
|
||||
|
||||
var dismissAlertImpl: ((Bool) -> Void)?
|
||||
let theme = context.presentationData.theme
|
||||
let controller = richTextAlertController(alertContext: AlertControllerContext(theme: theme.alert, themeSignal: .single(theme.alert)), title: title, text: attributedText, actions: [TextAlertAction(type: .genericAction, title: presentationData.strings.Wallet_Navigation_Cancel, action: {
|
||||
dismissAlertImpl?(true)
|
||||
}), TextAlertAction(type: .defaultAction, title: presentationData.strings.Wallet_Send_ConfirmationConfirm, action: {
|
||||
dismissAlertImpl?(false)
|
||||
dismissInputImpl?()
|
||||
let controller = OverlayStatusController(theme: presentationData.theme, type: .loading(cancelled: nil))
|
||||
presentControllerImpl?(controller, nil)
|
||||
|
||||
let _ = (verifySendGramsRequestAndEstimateFees(tonInstance: context.tonInstance, walletInfo: walletInfo, toAddress: destinationAddress, amount: amount, textMessage: commentData ?? Data(), timeout: 0)
|
||||
|> deliverOnMainQueue).start(next: { [weak controller] fees in
|
||||
controller?.dismiss()
|
||||
|
||||
let presentationData = context.presentationData
|
||||
let progressSignal = Signal<Never, NoError> { subscriber in
|
||||
let controller = OverlayStatusController(theme: presentationData.theme, type: .loading(cancelled: nil))
|
||||
presentControllerImpl?(controller, nil)
|
||||
return ActionDisposable { [weak controller] in
|
||||
Queue.mainQueue().async() {
|
||||
controller?.dismiss()
|
||||
}
|
||||
|
||||
let title = NSAttributedString(string: presentationData.strings.Wallet_Send_Confirmation, font: Font.semibold(17.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
|
||||
let feeAmount = fees.inFwdFee + fees.storageFee + fees.gasFee + fees.fwdFee
|
||||
|
||||
let (text, ranges) = presentationData.strings.Wallet_Send_ConfirmationText(formatBalanceText(amount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator), formattedAddress, "\(formatBalanceText(feeAmount, decimalSeparator: presentationData.dateTimeFormat.decimalSeparator))")
|
||||
let bodyAttributes = MarkdownAttributeSet(font: Font.regular(13.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
let boldAttributes = MarkdownAttributeSet(font: Font.semibold(13.0), textColor: presentationData.theme.list.itemPrimaryTextColor)
|
||||
let attributedText = NSMutableAttributedString(attributedString: parseMarkdownIntoAttributedString(text, attributes: MarkdownAttributes(body: bodyAttributes, bold: boldAttributes, link: bodyAttributes, linkAttribute: { _ in return nil }), textAlignment: .center))
|
||||
for (index, range) in ranges {
|
||||
if index == 1 {
|
||||
attributedText.addAttribute(.font, value: Font.monospace(14.0), range: range)
|
||||
}
|
||||
}
|
||||
|> runOn(Queue.mainQueue())
|
||||
|> delay(0.15, queue: Queue.mainQueue())
|
||||
let progressDisposable = progressSignal.start()
|
||||
|
||||
var serverSaltSignal = serverSaltValue.get()
|
||||
|> take(1)
|
||||
|
||||
serverSaltSignal = serverSaltSignal
|
||||
|> afterDisposed {
|
||||
Queue.mainQueue().async {
|
||||
progressDisposable.dispose()
|
||||
}
|
||||
}
|
||||
|
||||
let _ = (serverSaltSignal
|
||||
|> deliverOnMainQueue).start(next: { serverSalt in
|
||||
if let serverSalt = serverSalt {
|
||||
if let commentData = state.comment.data(using: .utf8) {
|
||||
pushImpl?(WalletSplashScreen(context: context, mode: .sending(walletInfo, state.address, amount, commentData, randomId, serverSalt), walletCreatedPreloadState: nil))
|
||||
var dismissAlertImpl: ((Bool) -> Void)?
|
||||
let theme = context.presentationData.theme
|
||||
let controller = richTextAlertController(alertContext: AlertControllerContext(theme: theme.alert, themeSignal: .single(theme.alert)), title: title, text: attributedText, actions: [TextAlertAction(type: .genericAction, title: presentationData.strings.Wallet_Navigation_Cancel, action: {
|
||||
dismissAlertImpl?(true)
|
||||
}), TextAlertAction(type: .defaultAction, title: presentationData.strings.Wallet_Send_ConfirmationConfirm, action: {
|
||||
dismissAlertImpl?(false)
|
||||
dismissInputImpl?()
|
||||
|
||||
let presentationData = context.presentationData
|
||||
let progressSignal = Signal<Never, NoError> { subscriber in
|
||||
let controller = OverlayStatusController(theme: presentationData.theme, type: .loading(cancelled: nil))
|
||||
presentControllerImpl?(controller, nil)
|
||||
return ActionDisposable { [weak controller] in
|
||||
Queue.mainQueue().async() {
|
||||
controller?.dismiss()
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
})], allowInputInset: false, dismissAutomatically: false)
|
||||
presentInGlobalOverlayImpl?(controller, nil)
|
||||
|
||||
dismissAlertImpl = { [weak controller] animated in
|
||||
if animated {
|
||||
controller?.dismissAnimated()
|
||||
} else {
|
||||
controller?.dismiss()
|
||||
|> runOn(Queue.mainQueue())
|
||||
|> delay(0.15, queue: Queue.mainQueue())
|
||||
let progressDisposable = progressSignal.start()
|
||||
|
||||
var serverSaltSignal = serverSaltValue.get()
|
||||
|> take(1)
|
||||
|
||||
serverSaltSignal = serverSaltSignal
|
||||
|> afterDisposed {
|
||||
Queue.mainQueue().async {
|
||||
progressDisposable.dispose()
|
||||
}
|
||||
}
|
||||
|
||||
let _ = (serverSaltSignal
|
||||
|> deliverOnMainQueue).start(next: { serverSalt in
|
||||
if let serverSalt = serverSalt {
|
||||
if let commentData = state.comment.data(using: .utf8) {
|
||||
pushImpl?(WalletSplashScreen(context: context, mode: .sending(walletInfo, state.address, amount, commentData, randomId, serverSalt), walletCreatedPreloadState: nil))
|
||||
}
|
||||
}
|
||||
})
|
||||
})], allowInputInset: false, dismissAutomatically: false)
|
||||
presentInGlobalOverlayImpl?(controller, nil)
|
||||
|
||||
dismissAlertImpl = { [weak controller] animated in
|
||||
if animated {
|
||||
controller?.dismissAnimated()
|
||||
} else {
|
||||
controller?.dismiss()
|
||||
}
|
||||
}
|
||||
}
|
||||
}, error: { [weak controller] error in
|
||||
controller?.dismiss()
|
||||
|
||||
}, error: { [weak controller] error in
|
||||
controller?.dismiss()
|
||||
|
||||
let presentationData = context.presentationData
|
||||
|
||||
var title: String?
|
||||
let text: String
|
||||
switch error {
|
||||
case .generic:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
case .network:
|
||||
title = presentationData.strings.Wallet_Send_NetworkErrorTitle
|
||||
text = presentationData.strings.Wallet_Send_NetworkErrorText
|
||||
case .notEnoughFunds:
|
||||
title = presentationData.strings.Wallet_Send_ErrorNotEnoughFundsTitle
|
||||
text = presentationData.strings.Wallet_Send_ErrorNotEnoughFundsText
|
||||
case .messageTooLong:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
case .invalidAddress:
|
||||
text = presentationData.strings.Wallet_Send_ErrorInvalidAddress
|
||||
case .secretDecryptionFailed:
|
||||
text = presentationData.strings.Wallet_Send_ErrorDecryptionFailed
|
||||
case .destinationIsNotInitialized:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
}
|
||||
let theme = presentationData.theme
|
||||
let controller = textAlertController(alertContext: AlertControllerContext(theme: theme.alert, themeSignal: .single(theme.alert)), title: title, text: text, actions: [TextAlertAction(type: .defaultAction, title: presentationData.strings.Wallet_Alert_OK, action: {
|
||||
})])
|
||||
presentControllerImpl?(controller, nil)
|
||||
})
|
||||
}
|
||||
|
||||
let _ = (walletAddress(publicKey: walletInfo.publicKey, tonInstance: context.tonInstance)
|
||||
|> deliverOnMainQueue).start(next: { walletAddress in
|
||||
let presentationData = context.presentationData
|
||||
let state = stateValue.with { $0 }
|
||||
let destinationAddress = state.address
|
||||
|
||||
var title: String?
|
||||
let text: String
|
||||
switch error {
|
||||
case .generic:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
case .network:
|
||||
title = presentationData.strings.Wallet_Send_NetworkErrorTitle
|
||||
text = presentationData.strings.Wallet_Send_NetworkErrorText
|
||||
case .notEnoughFunds:
|
||||
title = presentationData.strings.Wallet_Send_ErrorNotEnoughFundsTitle
|
||||
text = presentationData.strings.Wallet_Send_ErrorNotEnoughFundsText
|
||||
case .messageTooLong:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
case .invalidAddress:
|
||||
text = presentationData.strings.Wallet_Send_ErrorInvalidAddress
|
||||
case .secretDecryptionFailed:
|
||||
text = presentationData.strings.Wallet_Send_ErrorDecryptionFailed
|
||||
case .destinationIsNotInitialized:
|
||||
text = presentationData.strings.Wallet_UnknownError
|
||||
if destinationAddress == walletAddress {
|
||||
presentControllerImpl?(standardTextAlertController(theme: presentationData.theme.alert, title: presentationData.strings.Wallet_Send_OwnAddressAlertTitle, text: presentationData.strings.Wallet_Send_OwnAddressAlertText, actions: [
|
||||
TextAlertAction(type: .genericAction, title: presentationData.strings.Wallet_Alert_Cancel, action: {
|
||||
}),
|
||||
TextAlertAction(type: .defaultAction, title: presentationData.strings.Wallet_Send_OwnAddressAlertProceed, action: {
|
||||
proceed()
|
||||
})
|
||||
]), nil)
|
||||
} else {
|
||||
proceed()
|
||||
}
|
||||
let theme = presentationData.theme
|
||||
let controller = textAlertController(alertContext: AlertControllerContext(theme: theme.alert, themeSignal: .single(theme.alert)), title: title, text: text, actions: [TextAlertAction(type: .defaultAction, title: presentationData.strings.Wallet_Alert_OK, action: {
|
||||
})])
|
||||
presentControllerImpl?(controller, nil)
|
||||
})
|
||||
})
|
||||
|
||||
|
@ -212,224 +212,227 @@ public final class WalletStrings: Equatable {
|
||||
}
|
||||
public var Wallet_WordImport_IncorrectText: String { return self._s[20]! }
|
||||
public var Wallet_Month_GenJanuary: String { return self._s[21]! }
|
||||
public var Wallet_Receive_ShareAddress: String { return self._s[22]! }
|
||||
public var Wallet_WordImport_Title: String { return self._s[23]! }
|
||||
public var Wallet_TransactionInfo_Title: String { return self._s[24]! }
|
||||
public var Wallet_Words_NotDoneText: String { return self._s[26]! }
|
||||
public var Wallet_RestoreFailed_EnterWords: String { return self._s[27]! }
|
||||
public var Wallet_WordImport_Text: String { return self._s[28]! }
|
||||
public var Wallet_RestoreFailed_Text: String { return self._s[30]! }
|
||||
public var Wallet_TransactionInfo_NoAddress: String { return self._s[31]! }
|
||||
public var Wallet_Navigation_Back: String { return self._s[32]! }
|
||||
public var Wallet_Intro_Terms: String { return self._s[33]! }
|
||||
public var Wallet_Send_OwnAddressAlertTitle: String { return self._s[22]! }
|
||||
public var Wallet_Receive_ShareAddress: String { return self._s[23]! }
|
||||
public var Wallet_WordImport_Title: String { return self._s[24]! }
|
||||
public var Wallet_TransactionInfo_Title: String { return self._s[25]! }
|
||||
public var Wallet_Words_NotDoneText: String { return self._s[27]! }
|
||||
public var Wallet_RestoreFailed_EnterWords: String { return self._s[28]! }
|
||||
public var Wallet_WordImport_Text: String { return self._s[29]! }
|
||||
public var Wallet_RestoreFailed_Text: String { return self._s[31]! }
|
||||
public var Wallet_TransactionInfo_NoAddress: String { return self._s[32]! }
|
||||
public var Wallet_Navigation_Back: String { return self._s[33]! }
|
||||
public var Wallet_Intro_Terms: String { return self._s[34]! }
|
||||
public func Wallet_Send_Balance(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[34]!, self._r[34]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[35]!, self._r[35]!, [_0])
|
||||
}
|
||||
public func Wallet_Time_PreciseDate_m8(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[35]!, self._r[35]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[36]!, self._r[36]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_TransactionInfo_AddressCopied: String { return self._s[36]! }
|
||||
public var Wallet_TransactionInfo_AddressCopied: String { return self._s[37]! }
|
||||
public func Wallet_Info_TransactionDateHeaderYear(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[37]!, self._r[37]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[38]!, self._r[38]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Send_NetworkErrorText: String { return self._s[38]! }
|
||||
public var Wallet_VoiceOver_Editing_ClearText: String { return self._s[39]! }
|
||||
public var Wallet_Intro_ImportExisting: String { return self._s[40]! }
|
||||
public var Wallet_Receive_CommentInfo: String { return self._s[41]! }
|
||||
public var Wallet_WordCheck_Continue: String { return self._s[42]! }
|
||||
public var Wallet_Completed_ProgressText: String { return self._s[43]! }
|
||||
public var Wallet_Receive_InvoiceUrlCopied: String { return self._s[44]! }
|
||||
public var Wallet_Completed_Text: String { return self._s[45]! }
|
||||
public var Wallet_WordCheck_IncorrectHeader: String { return self._s[47]! }
|
||||
public var Wallet_Receive_Title: String { return self._s[48]! }
|
||||
public var Wallet_Info_WalletCreated: String { return self._s[49]! }
|
||||
public var Wallet_Navigation_Cancel: String { return self._s[50]! }
|
||||
public var Wallet_CreateInvoice_Title: String { return self._s[51]! }
|
||||
public var Wallet_Send_NetworkErrorText: String { return self._s[39]! }
|
||||
public var Wallet_VoiceOver_Editing_ClearText: String { return self._s[40]! }
|
||||
public var Wallet_Intro_ImportExisting: String { return self._s[41]! }
|
||||
public var Wallet_Receive_CommentInfo: String { return self._s[42]! }
|
||||
public var Wallet_WordCheck_Continue: String { return self._s[43]! }
|
||||
public var Wallet_Completed_ProgressText: String { return self._s[44]! }
|
||||
public var Wallet_Receive_InvoiceUrlCopied: String { return self._s[45]! }
|
||||
public var Wallet_Completed_Text: String { return self._s[46]! }
|
||||
public var Wallet_WordCheck_IncorrectHeader: String { return self._s[48]! }
|
||||
public var Wallet_Receive_Title: String { return self._s[49]! }
|
||||
public var Wallet_Info_WalletCreated: String { return self._s[50]! }
|
||||
public var Wallet_Navigation_Cancel: String { return self._s[51]! }
|
||||
public var Wallet_CreateInvoice_Title: String { return self._s[52]! }
|
||||
public func Wallet_WordCheck_Text(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[52]!, self._r[52]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[53]!, self._r[53]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_TransactionInfo_SenderHeader: String { return self._s[53]! }
|
||||
public var Wallet_TransactionInfo_SenderHeader: String { return self._s[54]! }
|
||||
public func Wallet_Time_PreciseDate_m4(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[54]!, self._r[54]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[55]!, self._r[55]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Month_GenAugust: String { return self._s[55]! }
|
||||
public var Wallet_Info_UnknownTransaction: String { return self._s[56]! }
|
||||
public var Wallet_Receive_CreateInvoice: String { return self._s[57]! }
|
||||
public var Wallet_Month_GenSeptember: String { return self._s[58]! }
|
||||
public var Wallet_Month_GenJuly: String { return self._s[59]! }
|
||||
public var Wallet_Receive_AddressHeader: String { return self._s[60]! }
|
||||
public var Wallet_Send_AmountText: String { return self._s[61]! }
|
||||
public var Wallet_SecureStorageNotAvailable_Text: String { return self._s[62]! }
|
||||
public var Wallet_Month_GenAugust: String { return self._s[56]! }
|
||||
public var Wallet_Info_UnknownTransaction: String { return self._s[57]! }
|
||||
public var Wallet_Receive_CreateInvoice: String { return self._s[58]! }
|
||||
public var Wallet_Month_GenSeptember: String { return self._s[59]! }
|
||||
public var Wallet_Month_GenJuly: String { return self._s[60]! }
|
||||
public var Wallet_Receive_AddressHeader: String { return self._s[61]! }
|
||||
public var Wallet_Send_AmountText: String { return self._s[62]! }
|
||||
public var Wallet_SecureStorageNotAvailable_Text: String { return self._s[63]! }
|
||||
public func Wallet_Time_PreciseDate_m12(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[63]!, self._r[63]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[64]!, self._r[64]!, [_1, _2, _3])
|
||||
}
|
||||
public func Wallet_Updated_TodayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[64]!, self._r[64]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[65]!, self._r[65]!, [_0])
|
||||
}
|
||||
public var Wallet_Configuration_Title: String { return self._s[66]! }
|
||||
public var Wallet_Words_Title: String { return self._s[67]! }
|
||||
public var Wallet_Month_ShortMay: String { return self._s[68]! }
|
||||
public var Wallet_WordCheck_Title: String { return self._s[69]! }
|
||||
public var Wallet_Words_NotDoneResponse: String { return self._s[70]! }
|
||||
public var Wallet_Send_ErrorNotEnoughFundsText: String { return self._s[71]! }
|
||||
public var Wallet_Receive_CreateInvoiceInfo: String { return self._s[72]! }
|
||||
public var Wallet_Configuration_Title: String { return self._s[67]! }
|
||||
public var Wallet_Words_Title: String { return self._s[68]! }
|
||||
public var Wallet_Month_ShortMay: String { return self._s[69]! }
|
||||
public var Wallet_WordCheck_Title: String { return self._s[70]! }
|
||||
public var Wallet_Words_NotDoneResponse: String { return self._s[71]! }
|
||||
public var Wallet_Send_ErrorNotEnoughFundsText: String { return self._s[72]! }
|
||||
public var Wallet_Receive_CreateInvoiceInfo: String { return self._s[73]! }
|
||||
public func Wallet_Time_PreciseDate_m9(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[73]!, self._r[73]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[74]!, self._r[74]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Info_Address: String { return self._s[74]! }
|
||||
public var Wallet_Intro_CreateWallet: String { return self._s[75]! }
|
||||
public var Wallet_SecureStorageChanged_PasscodeText: String { return self._s[76]! }
|
||||
public var Wallet_Info_Address: String { return self._s[75]! }
|
||||
public var Wallet_Intro_CreateWallet: String { return self._s[76]! }
|
||||
public var Wallet_SecureStorageChanged_PasscodeText: String { return self._s[77]! }
|
||||
public func Wallet_SecureStorageReset_BiometryText(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[77]!, self._r[77]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[78]!, self._r[78]!, [_0])
|
||||
}
|
||||
public var Wallet_Send_SendAnyway: String { return self._s[78]! }
|
||||
public var Wallet_UnknownError: String { return self._s[79]! }
|
||||
public var Wallet_Completed_ProgressTitle: String { return self._s[80]! }
|
||||
public var Wallet_SecureStorageChanged_ImportWallet: String { return self._s[81]! }
|
||||
public var Wallet_SecureStorageChanged_CreateWallet: String { return self._s[83]! }
|
||||
public var Wallet_Words_NotDoneOk: String { return self._s[84]! }
|
||||
public var Wallet_Intro_Title: String { return self._s[85]! }
|
||||
public var Wallet_Info_Receive: String { return self._s[86]! }
|
||||
public var Wallet_Completed_ViewWallet: String { return self._s[87]! }
|
||||
public var Wallet_Month_ShortJuly: String { return self._s[88]! }
|
||||
public var Wallet_Month_ShortApril: String { return self._s[89]! }
|
||||
public var Wallet_Send_SendAnyway: String { return self._s[79]! }
|
||||
public var Wallet_UnknownError: String { return self._s[80]! }
|
||||
public var Wallet_Completed_ProgressTitle: String { return self._s[81]! }
|
||||
public var Wallet_SecureStorageChanged_ImportWallet: String { return self._s[82]! }
|
||||
public var Wallet_SecureStorageChanged_CreateWallet: String { return self._s[84]! }
|
||||
public var Wallet_Words_NotDoneOk: String { return self._s[85]! }
|
||||
public var Wallet_Intro_Title: String { return self._s[86]! }
|
||||
public var Wallet_Info_Receive: String { return self._s[87]! }
|
||||
public var Wallet_Completed_ViewWallet: String { return self._s[88]! }
|
||||
public var Wallet_Month_ShortJuly: String { return self._s[89]! }
|
||||
public var Wallet_Month_ShortApril: String { return self._s[90]! }
|
||||
public func Wallet_Info_TransactionDateHeader(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[90]!, self._r[90]!, [_1, _2])
|
||||
return formatWithArgumentRanges(self._s[91]!, self._r[91]!, [_1, _2])
|
||||
}
|
||||
public var Wallet_Receive_ShareInvoiceUrl: String { return self._s[91]! }
|
||||
public var Wallet_Receive_ShareInvoiceUrl: String { return self._s[92]! }
|
||||
public func Wallet_Time_PreciseDate_m10(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[92]!, self._r[92]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[93]!, self._r[93]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Send_UninitializedText: String { return self._s[94]! }
|
||||
public var Wallet_Send_UninitializedText: String { return self._s[95]! }
|
||||
public func Wallet_Sent_Text(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[95]!, self._r[95]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[96]!, self._r[96]!, [_0])
|
||||
}
|
||||
public var Wallet_Month_GenNovember: String { return self._s[96]! }
|
||||
public var Wallet_Month_GenNovember: String { return self._s[97]! }
|
||||
public func Wallet_Time_PreciseDate_m5(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[97]!, self._r[97]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[98]!, self._r[98]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Month_GenApril: String { return self._s[98]! }
|
||||
public var Wallet_Month_ShortMarch: String { return self._s[99]! }
|
||||
public var Wallet_Month_GenFebruary: String { return self._s[100]! }
|
||||
public var Wallet_Qr_ScanCode: String { return self._s[101]! }
|
||||
public var Wallet_Receive_AddressCopied: String { return self._s[102]! }
|
||||
public var Wallet_Send_UninitializedTitle: String { return self._s[103]! }
|
||||
public var Wallet_Send_Send: String { return self._s[104]! }
|
||||
public var Wallet_Info_RefreshErrorTitle: String { return self._s[105]! }
|
||||
public var Wallet_Month_GenJune: String { return self._s[106]! }
|
||||
public var Wallet_Send_AddressHeader: String { return self._s[107]! }
|
||||
public var Wallet_SecureStorageReset_BiometryTouchId: String { return self._s[108]! }
|
||||
public var Wallet_Send_Confirmation: String { return self._s[109]! }
|
||||
public var Wallet_Completed_Title: String { return self._s[110]! }
|
||||
public var Wallet_Alert_OK: String { return self._s[111]! }
|
||||
public var Wallet_Settings_DeleteWallet: String { return self._s[112]! }
|
||||
public var Wallet_SecureStorageReset_PasscodeText: String { return self._s[113]! }
|
||||
public var Wallet_Month_ShortSeptember: String { return self._s[114]! }
|
||||
public var Wallet_Info_TransactionTo: String { return self._s[115]! }
|
||||
public var Wallet_Send_ConfirmationConfirm: String { return self._s[116]! }
|
||||
public var Wallet_TransactionInfo_OtherFeeInfo: String { return self._s[117]! }
|
||||
public var Wallet_Receive_AmountText: String { return self._s[118]! }
|
||||
public var Wallet_Receive_CopyAddress: String { return self._s[119]! }
|
||||
public var Wallet_Intro_Text: String { return self._s[121]! }
|
||||
public var Wallet_Configuration_Apply: String { return self._s[122]! }
|
||||
public var Wallet_Month_GenApril: String { return self._s[99]! }
|
||||
public var Wallet_Month_ShortMarch: String { return self._s[100]! }
|
||||
public var Wallet_Month_GenFebruary: String { return self._s[101]! }
|
||||
public var Wallet_Qr_ScanCode: String { return self._s[102]! }
|
||||
public var Wallet_Receive_AddressCopied: String { return self._s[103]! }
|
||||
public var Wallet_Send_UninitializedTitle: String { return self._s[104]! }
|
||||
public var Wallet_Send_Send: String { return self._s[105]! }
|
||||
public var Wallet_Info_RefreshErrorTitle: String { return self._s[106]! }
|
||||
public var Wallet_Month_GenJune: String { return self._s[107]! }
|
||||
public var Wallet_Send_AddressHeader: String { return self._s[108]! }
|
||||
public var Wallet_SecureStorageReset_BiometryTouchId: String { return self._s[109]! }
|
||||
public var Wallet_Send_Confirmation: String { return self._s[110]! }
|
||||
public var Wallet_Completed_Title: String { return self._s[111]! }
|
||||
public var Wallet_Alert_OK: String { return self._s[112]! }
|
||||
public var Wallet_Settings_DeleteWallet: String { return self._s[113]! }
|
||||
public var Wallet_SecureStorageReset_PasscodeText: String { return self._s[114]! }
|
||||
public var Wallet_Month_ShortSeptember: String { return self._s[115]! }
|
||||
public var Wallet_Info_TransactionTo: String { return self._s[116]! }
|
||||
public var Wallet_Send_ConfirmationConfirm: String { return self._s[117]! }
|
||||
public var Wallet_TransactionInfo_OtherFeeInfo: String { return self._s[118]! }
|
||||
public var Wallet_Receive_AmountText: String { return self._s[119]! }
|
||||
public var Wallet_Receive_CopyAddress: String { return self._s[120]! }
|
||||
public var Wallet_Intro_Text: String { return self._s[122]! }
|
||||
public var Wallet_Configuration_Apply: String { return self._s[123]! }
|
||||
public func Wallet_SecureStorageChanged_BiometryText(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[123]!, self._r[123]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[124]!, self._r[124]!, [_0])
|
||||
}
|
||||
public var Wallet_TransactionInfo_FeeInfoURL: String { return self._s[124]! }
|
||||
public var Wallet_TransactionInfo_FeeInfoURL: String { return self._s[125]! }
|
||||
public func Wallet_Time_PreciseDate_m1(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[125]!, self._r[125]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[126]!, self._r[126]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_RestoreFailed_CreateWallet: String { return self._s[126]! }
|
||||
public var Wallet_Weekday_Yesterday: String { return self._s[127]! }
|
||||
public var Wallet_Receive_AmountHeader: String { return self._s[128]! }
|
||||
public var Wallet_Month_ShortFebruary: String { return self._s[129]! }
|
||||
public var Wallet_Alert_Cancel: String { return self._s[130]! }
|
||||
public var Wallet_TransactionInfo_RecipientHeader: String { return self._s[131]! }
|
||||
public var Wallet_Info_TransactionFrom: String { return self._s[132]! }
|
||||
public var Wallet_Send_ErrorDecryptionFailed: String { return self._s[133]! }
|
||||
public var Wallet_Words_NotDoneTitle: String { return self._s[134]! }
|
||||
public var Wallet_Month_ShortOctober: String { return self._s[135]! }
|
||||
public var Wallet_Month_GenMay: String { return self._s[136]! }
|
||||
public var Wallet_Intro_CreateErrorTitle: String { return self._s[137]! }
|
||||
public var Wallet_SecureStorageReset_BiometryFaceId: String { return self._s[138]! }
|
||||
public var Wallet_Month_ShortJanuary: String { return self._s[139]! }
|
||||
public var Wallet_Month_GenMarch: String { return self._s[140]! }
|
||||
public var Wallet_Sending_Text: String { return self._s[141]! }
|
||||
public var Wallet_Month_GenOctober: String { return self._s[142]! }
|
||||
public var Wallet_Receive_CopyInvoiceUrl: String { return self._s[143]! }
|
||||
public var Wallet_ContextMenuCopy: String { return self._s[144]! }
|
||||
public var Wallet_RestoreFailed_CreateWallet: String { return self._s[127]! }
|
||||
public var Wallet_Weekday_Yesterday: String { return self._s[128]! }
|
||||
public var Wallet_Receive_AmountHeader: String { return self._s[129]! }
|
||||
public var Wallet_Month_ShortFebruary: String { return self._s[130]! }
|
||||
public var Wallet_Alert_Cancel: String { return self._s[131]! }
|
||||
public var Wallet_TransactionInfo_RecipientHeader: String { return self._s[132]! }
|
||||
public var Wallet_Info_TransactionFrom: String { return self._s[133]! }
|
||||
public var Wallet_Send_ErrorDecryptionFailed: String { return self._s[134]! }
|
||||
public var Wallet_Send_OwnAddressAlertText: String { return self._s[135]! }
|
||||
public var Wallet_Words_NotDoneTitle: String { return self._s[136]! }
|
||||
public var Wallet_Month_ShortOctober: String { return self._s[137]! }
|
||||
public var Wallet_Month_GenMay: String { return self._s[138]! }
|
||||
public var Wallet_Intro_CreateErrorTitle: String { return self._s[139]! }
|
||||
public var Wallet_SecureStorageReset_BiometryFaceId: String { return self._s[140]! }
|
||||
public var Wallet_Month_ShortJanuary: String { return self._s[141]! }
|
||||
public var Wallet_Month_GenMarch: String { return self._s[142]! }
|
||||
public var Wallet_Sending_Text: String { return self._s[143]! }
|
||||
public var Wallet_Month_GenOctober: String { return self._s[144]! }
|
||||
public var Wallet_Receive_CopyInvoiceUrl: String { return self._s[145]! }
|
||||
public var Wallet_ContextMenuCopy: String { return self._s[146]! }
|
||||
public func Wallet_Time_PreciseDate_m6(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[145]!, self._r[145]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[147]!, self._r[147]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Info_Updating: String { return self._s[147]! }
|
||||
public var Wallet_Intro_TermsUrl: String { return self._s[148]! }
|
||||
public var Wallet_Created_ExportErrorTitle: String { return self._s[149]! }
|
||||
public var Wallet_SecureStorageNotAvailable_Title: String { return self._s[150]! }
|
||||
public var Wallet_Sending_Title: String { return self._s[151]! }
|
||||
public var Wallet_Navigation_Done: String { return self._s[152]! }
|
||||
public var Wallet_Settings_Title: String { return self._s[153]! }
|
||||
public var Wallet_Info_Updating: String { return self._s[149]! }
|
||||
public var Wallet_Intro_TermsUrl: String { return self._s[150]! }
|
||||
public var Wallet_Created_ExportErrorTitle: String { return self._s[151]! }
|
||||
public var Wallet_SecureStorageNotAvailable_Title: String { return self._s[152]! }
|
||||
public var Wallet_Sending_Title: String { return self._s[153]! }
|
||||
public var Wallet_Navigation_Done: String { return self._s[154]! }
|
||||
public var Wallet_Settings_Title: String { return self._s[155]! }
|
||||
public func Wallet_Receive_ShareInvoiceUrlInfo(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[154]!, self._r[154]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[156]!, self._r[156]!, [_0])
|
||||
}
|
||||
public var Wallet_Info_RefreshErrorNetworkText: String { return self._s[155]! }
|
||||
public var Wallet_Weekday_Today: String { return self._s[157]! }
|
||||
public var Wallet_Month_ShortDecember: String { return self._s[158]! }
|
||||
public var Wallet_Words_Text: String { return self._s[159]! }
|
||||
public var Wallet_WordCheck_ViewWords: String { return self._s[160]! }
|
||||
public var Wallet_Send_AddressInfo: String { return self._s[161]! }
|
||||
public var Wallet_Info_RefreshErrorNetworkText: String { return self._s[157]! }
|
||||
public var Wallet_Weekday_Today: String { return self._s[159]! }
|
||||
public var Wallet_Month_ShortDecember: String { return self._s[160]! }
|
||||
public var Wallet_Words_Text: String { return self._s[161]! }
|
||||
public var Wallet_WordCheck_ViewWords: String { return self._s[162]! }
|
||||
public var Wallet_Send_AddressInfo: String { return self._s[163]! }
|
||||
public func Wallet_Updated_AtDate(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[162]!, self._r[162]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[164]!, self._r[164]!, [_0])
|
||||
}
|
||||
public var Wallet_Intro_NotNow: String { return self._s[163]! }
|
||||
public var Wallet_Navigation_Close: String { return self._s[164]! }
|
||||
public var Wallet_Month_GenDecember: String { return self._s[166]! }
|
||||
public var Wallet_Send_ErrorNotEnoughFundsTitle: String { return self._s[167]! }
|
||||
public var Wallet_WordImport_IncorrectTitle: String { return self._s[168]! }
|
||||
public var Wallet_Send_AddressText: String { return self._s[169]! }
|
||||
public var Wallet_Receive_AmountInfo: String { return self._s[170]! }
|
||||
public var Wallet_Intro_NotNow: String { return self._s[165]! }
|
||||
public var Wallet_Send_OwnAddressAlertProceed: String { return self._s[166]! }
|
||||
public var Wallet_Navigation_Close: String { return self._s[167]! }
|
||||
public var Wallet_Month_GenDecember: String { return self._s[169]! }
|
||||
public var Wallet_Send_ErrorNotEnoughFundsTitle: String { return self._s[170]! }
|
||||
public var Wallet_WordImport_IncorrectTitle: String { return self._s[171]! }
|
||||
public var Wallet_Send_AddressText: String { return self._s[172]! }
|
||||
public var Wallet_Receive_AmountInfo: String { return self._s[173]! }
|
||||
public func Wallet_Time_PreciseDate_m2(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[171]!, self._r[171]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[174]!, self._r[174]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Month_ShortAugust: String { return self._s[172]! }
|
||||
public var Wallet_Qr_Title: String { return self._s[173]! }
|
||||
public var Wallet_Settings_Configuration: String { return self._s[174]! }
|
||||
public var Wallet_WordCheck_TryAgain: String { return self._s[175]! }
|
||||
public var Wallet_Info_TransactionPendingHeader: String { return self._s[176]! }
|
||||
public var Wallet_Receive_InvoiceUrlHeader: String { return self._s[177]! }
|
||||
public var Wallet_Created_Text: String { return self._s[178]! }
|
||||
public var Wallet_Created_Proceed: String { return self._s[179]! }
|
||||
public var Wallet_Words_Done: String { return self._s[180]! }
|
||||
public var Wallet_WordImport_Continue: String { return self._s[181]! }
|
||||
public var Wallet_TransactionInfo_StorageFeeHeader: String { return self._s[182]! }
|
||||
public var Wallet_WordImport_CanNotRemember: String { return self._s[183]! }
|
||||
public var Wallet_Month_ShortAugust: String { return self._s[175]! }
|
||||
public var Wallet_Qr_Title: String { return self._s[176]! }
|
||||
public var Wallet_Settings_Configuration: String { return self._s[177]! }
|
||||
public var Wallet_WordCheck_TryAgain: String { return self._s[178]! }
|
||||
public var Wallet_Info_TransactionPendingHeader: String { return self._s[179]! }
|
||||
public var Wallet_Receive_InvoiceUrlHeader: String { return self._s[180]! }
|
||||
public var Wallet_Created_Text: String { return self._s[181]! }
|
||||
public var Wallet_Created_Proceed: String { return self._s[182]! }
|
||||
public var Wallet_Words_Done: String { return self._s[183]! }
|
||||
public var Wallet_WordImport_Continue: String { return self._s[184]! }
|
||||
public var Wallet_TransactionInfo_StorageFeeHeader: String { return self._s[185]! }
|
||||
public var Wallet_WordImport_CanNotRemember: String { return self._s[186]! }
|
||||
public func Wallet_Time_PreciseDate_m11(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[184]!, self._r[184]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[187]!, self._r[187]!, [_1, _2, _3])
|
||||
}
|
||||
public func Wallet_Send_ConfirmationText(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[185]!, self._r[185]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[188]!, self._r[188]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Created_ExportErrorText: String { return self._s[187]! }
|
||||
public var Wallet_Created_ExportErrorText: String { return self._s[190]! }
|
||||
public func Wallet_Updated_YesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[188]!, self._r[188]!, [_0])
|
||||
return formatWithArgumentRanges(self._s[191]!, self._r[191]!, [_0])
|
||||
}
|
||||
public var Wallet_Settings_DeleteWalletInfo: String { return self._s[189]! }
|
||||
public var Wallet_Intro_CreateErrorText: String { return self._s[190]! }
|
||||
public var Wallet_Sent_ViewWallet: String { return self._s[191]! }
|
||||
public var Wallet_Send_ErrorInvalidAddress: String { return self._s[192]! }
|
||||
public var Wallet_Settings_DeleteWalletInfo: String { return self._s[192]! }
|
||||
public var Wallet_Intro_CreateErrorText: String { return self._s[193]! }
|
||||
public var Wallet_Sent_ViewWallet: String { return self._s[194]! }
|
||||
public var Wallet_Send_ErrorInvalidAddress: String { return self._s[195]! }
|
||||
public func Wallet_Time_PreciseDate_m7(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
|
||||
return formatWithArgumentRanges(self._s[193]!, self._r[193]!, [_1, _2, _3])
|
||||
return formatWithArgumentRanges(self._s[196]!, self._r[196]!, [_1, _2, _3])
|
||||
}
|
||||
public var Wallet_Send_Title: String { return self._s[194]! }
|
||||
public var Wallet_Info_RefreshErrorText: String { return self._s[195]! }
|
||||
public var Wallet_SecureStorageReset_Title: String { return self._s[196]! }
|
||||
public var Wallet_Receive_CommentHeader: String { return self._s[197]! }
|
||||
public var Wallet_Info_ReceiveGrams: String { return self._s[198]! }
|
||||
public func Wallet_Updated_MinutesAgo(_ value: Int32) -> String {
|
||||
public var Wallet_Send_Title: String { return self._s[197]! }
|
||||
public var Wallet_Info_RefreshErrorText: String { return self._s[198]! }
|
||||
public var Wallet_SecureStorageReset_Title: String { return self._s[199]! }
|
||||
public var Wallet_Receive_CommentHeader: String { return self._s[200]! }
|
||||
public var Wallet_Info_ReceiveGrams: String { return self._s[201]! }
|
||||
public func Wallet_Updated_HoursAgo(_ value: Int32) -> String {
|
||||
let form = getPluralizationForm(self.lc, value)
|
||||
let stringValue = walletStringsFormattedNumber(value, self.groupingSeparator)
|
||||
return String(format: self._ps[0 * 6 + Int(form.rawValue)]!, stringValue)
|
||||
}
|
||||
public func Wallet_Updated_HoursAgo(_ value: Int32) -> String {
|
||||
public func Wallet_Updated_MinutesAgo(_ value: Int32) -> String {
|
||||
let form = getPluralizationForm(self.lc, value)
|
||||
let stringValue = walletStringsFormattedNumber(value, self.groupingSeparator)
|
||||
return String(format: self._ps[1 * 6 + Int(form.rawValue)]!, stringValue)
|
||||
|
Loading…
x
Reference in New Issue
Block a user