Skip to content

Commit f608602

Browse files
committed
Merge branch 'release/1.1.0'
2 parents 3e1c2ae + 5c12f3f commit f608602

File tree

60 files changed

+1662
-256
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+1662
-256
lines changed

Adamant.xcodeproj/project.pbxproj

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
/* Begin PBXBuildFile section */
1010
4411402421C8B290703B13EB /* Pods_Adamant.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C107D5CB65B4D728B9D97C0F /* Pods_Adamant.framework */; };
11+
643ED0B12109F4BD005A9FDA /* JSAdamantCore+Native.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643ED0B02109F4BD005A9FDA /* JSAdamantCore+Native.swift */; };
1112
644EC34D20EFA60900F40C73 /* AdamantApi+Delegates.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644EC34C20EFA60900F40C73 /* AdamantApi+Delegates.swift */; };
1213
644EC34F20EFA77A00F40C73 /* Delegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644EC34E20EFA77A00F40C73 /* Delegate.swift */; };
1314
644EC35220EFA9A300F40C73 /* DelegateRoutes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644EC35120EFA9A300F40C73 /* DelegateRoutes.swift */; };
@@ -16,6 +17,8 @@
1617
644EC35B20EFB8E900F40C73 /* AdamantDelegateCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644EC35920EFB8E900F40C73 /* AdamantDelegateCell.swift */; };
1718
644EC35C20EFB8E900F40C73 /* AdamantDelegateCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 644EC35A20EFB8E900F40C73 /* AdamantDelegateCell.xib */; };
1819
644EC35E20F34F1E00F40C73 /* DelegateDetailsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644EC35D20F34F1E00F40C73 /* DelegateDetailsViewController.swift */; };
20+
6455E9F121075D3600B2E94C /* AddressBookService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6455E9F021075D3600B2E94C /* AddressBookService.swift */; };
21+
6455E9F321075D8000B2E94C /* AdamantAddressBookService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6455E9F221075D8000B2E94C /* AdamantAddressBookService.swift */; };
1922
64A223D620F760BB005157CB /* Localization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64A223D520F760BB005157CB /* Localization.swift */; };
2023
64D059FF20D3116B003AD655 /* NodesListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64D059FE20D3116A003AD655 /* NodesListViewController.swift */; };
2124
64E8305020F5FEEF006FA590 /* VotesAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64E8304F20F5FEEF006FA590 /* VotesAsset.swift */; };
@@ -152,6 +155,8 @@
152155
E9B3D39E201F99F40019EB36 /* DataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9B3D39D201F99F40019EB36 /* DataProvider.swift */; };
153156
E9B3D3A1201FA26B0019EB36 /* AdamantAccountsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9B3D3A0201FA26B0019EB36 /* AdamantAccountsProvider.swift */; };
154157
E9B3D3A9202082450019EB36 /* AdamantTransfersProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9B3D3A8202082450019EB36 /* AdamantTransfersProvider.swift */; };
158+
E9B4E1A8210F079E007E77FC /* DoubleDetailsTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9B4E1A7210F079E007E77FC /* DoubleDetailsTableViewCell.swift */; };
159+
E9B4E1AA210F1803007E77FC /* DoubleDetailsTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = E9B4E1A9210F08BE007E77FC /* DoubleDetailsTableViewCell.xib */; };
155160
E9C51ECF200E2D1100385EB7 /* FeeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9C51ECE200E2D1100385EB7 /* FeeTests.swift */; };
156161
E9C51EED2011416E00385EB7 /* adamant-core.js in Resources */ = {isa = PBXBuildFile; fileRef = E9C51EEC2011416E00385EB7 /* adamant-core.js */; };
157162
E9C51EEF20139DC600385EB7 /* TransactionIdResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9C51EEE20139DC600385EB7 /* TransactionIdResponse.swift */; };
@@ -208,6 +213,7 @@
208213
/* End PBXContainerItemProxy section */
209214

210215
/* Begin PBXFileReference section */
216+
643ED0B02109F4BD005A9FDA /* JSAdamantCore+Native.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "JSAdamantCore+Native.swift"; sourceTree = "<group>"; };
211217
644EC34C20EFA60900F40C73 /* AdamantApi+Delegates.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AdamantApi+Delegates.swift"; sourceTree = "<group>"; };
212218
644EC34E20EFA77A00F40C73 /* Delegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Delegate.swift; sourceTree = "<group>"; };
213219
644EC35120EFA9A300F40C73 /* DelegateRoutes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DelegateRoutes.swift; sourceTree = "<group>"; };
@@ -216,6 +222,8 @@
216222
644EC35920EFB8E900F40C73 /* AdamantDelegateCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdamantDelegateCell.swift; sourceTree = "<group>"; };
217223
644EC35A20EFB8E900F40C73 /* AdamantDelegateCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AdamantDelegateCell.xib; sourceTree = "<group>"; };
218224
644EC35D20F34F1E00F40C73 /* DelegateDetailsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DelegateDetailsViewController.swift; sourceTree = "<group>"; };
225+
6455E9F021075D3600B2E94C /* AddressBookService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddressBookService.swift; sourceTree = "<group>"; };
226+
6455E9F221075D8000B2E94C /* AdamantAddressBookService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdamantAddressBookService.swift; sourceTree = "<group>"; };
219227
64A223D520F760BB005157CB /* Localization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Localization.swift; sourceTree = "<group>"; };
220228
64D059FE20D3116A003AD655 /* NodesListViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NodesListViewController.swift; sourceTree = "<group>"; };
221229
64E8304F20F5FEEF006FA590 /* VotesAsset.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VotesAsset.swift; sourceTree = "<group>"; };
@@ -377,6 +385,8 @@
377385
E9B3D39D201F99F40019EB36 /* DataProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataProvider.swift; sourceTree = "<group>"; };
378386
E9B3D3A0201FA26B0019EB36 /* AdamantAccountsProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdamantAccountsProvider.swift; sourceTree = "<group>"; };
379387
E9B3D3A8202082450019EB36 /* AdamantTransfersProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdamantTransfersProvider.swift; sourceTree = "<group>"; };
388+
E9B4E1A7210F079E007E77FC /* DoubleDetailsTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DoubleDetailsTableViewCell.swift; sourceTree = "<group>"; };
389+
E9B4E1A9210F08BE007E77FC /* DoubleDetailsTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DoubleDetailsTableViewCell.xib; sourceTree = "<group>"; };
380390
E9C51ECE200E2D1100385EB7 /* FeeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeeTests.swift; sourceTree = "<group>"; };
381391
E9C51EEC2011416E00385EB7 /* adamant-core.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = "adamant-core.js"; sourceTree = "<group>"; };
382392
E9C51EEE20139DC600385EB7 /* TransactionIdResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransactionIdResponse.swift; sourceTree = "<group>"; };
@@ -511,6 +521,7 @@
511521
E9B3D398201F90320019EB36 /* DataProviders */,
512522
E9E7CD8A20026B0600DFC4DB /* AccountService.swift */,
513523
E913C9071FFFA943001A83F7 /* AdamantCore.swift */,
524+
6455E9F021075D3600B2E94C /* AddressBookService.swift */,
514525
E91947AB20001A9A001362F8 /* ApiService.swift */,
515526
E9E7CDBD2003AEFB00DFC4DB /* CellFactory.swift */,
516527
E9E7CD8C20026B6600DFC4DB /* DialogService.swift */,
@@ -531,13 +542,15 @@
531542
E9CAE8D02018AA5000345E76 /* ApiService */,
532543
E9B3D39F201FA2090019EB36 /* DataProviders */,
533544
E9E7CD922002740500DFC4DB /* AdamantAccountService.swift */,
545+
6455E9F221075D8000B2E94C /* AdamantAddressBookService.swift */,
534546
E90A494A204D9EB8009F6A65 /* AdamantAuthentication.swift */,
535547
E9E7CDBF2003AF6D00DFC4DB /* AdamantCellFactory.swift */,
536548
E9E7CD8E20026CD300DFC4DB /* AdamantDialogService.swift */,
537549
E9A03FD720DC0ABA007653A1 /* AdamantNodesSource.swift */,
538550
E93D7ABF2052CF63005D19DC /* AdamantNotificationService.swift */,
539551
E921597420611A6A0000CA5C /* AdamantReachability.swift */,
540552
E913C9161FFFAF76001A83F7 /* JSAdamantCore.swift */,
553+
643ED0B02109F4BD005A9FDA /* JSAdamantCore+Native.swift */,
541554
E905D39A2048A9BD00DDB504 /* KeychainStore.swift */,
542555
E950273F202E257E002C1098 /* RepeaterService.swift */,
543556
E9E7CDB42002BA6900DFC4DB /* SwinjectedRouter.swift */,
@@ -834,6 +847,8 @@
834847
E948E0472024F02700975D6B /* VersionFooter.xib */,
835848
E921534C20EE1E8700C0843F /* EurekaAlertLabelRow.swift */,
836849
E921534D20EE1E8700C0843F /* AlertLabelCell.xib */,
850+
E9B4E1A7210F079E007E77FC /* DoubleDetailsTableViewCell.swift */,
851+
E9B4E1A9210F08BE007E77FC /* DoubleDetailsTableViewCell.xib */,
837852
);
838853
path = SharedViews;
839854
sourceTree = "<group>";
@@ -990,6 +1005,7 @@
9901005
E9EC341A200524CA00C0E546 /* Exo+2_700_normal.ttf in Resources */,
9911006
E95CB456205D77B500A7218E /* Localizable.strings in Resources */,
9921007
E95CB45E205D7F9600A7218E /* Localizable.stringsdict in Resources */,
1008+
E9B4E1AA210F1803007E77FC /* DoubleDetailsTableViewCell.xib in Resources */,
9931009
E94E7B0E205D5EA80042B639 /* TransactionDetailsViewController.xib in Resources */,
9941010
E91E5BF420DAF3AB00B06B3C /* NodeCell.xib in Resources */,
9951011
E9EC341D200524CA00C0E546 /* Roboto_400_normal.ttf in Resources */,
@@ -1040,6 +1056,7 @@
10401056
"${BUILT_PRODUCTS_DIR}/RNCryptor/RNCryptor.framework",
10411057
"${BUILT_PRODUCTS_DIR}/ReachabilitySwift/Reachability.framework",
10421058
"${BUILT_PRODUCTS_DIR}/Swinject/Swinject.framework",
1059+
"${BUILT_PRODUCTS_DIR}/libsodium/libsodium.framework",
10431060
);
10441061
name = "[CP] Embed Pods Frameworks";
10451062
outputPaths = (
@@ -1059,6 +1076,7 @@
10591076
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNCryptor.framework",
10601077
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Reachability.framework",
10611078
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Swinject.framework",
1079+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/libsodium.framework",
10621080
);
10631081
runOnlyForDeploymentPostprocessing = 0;
10641082
shellPath = /bin/sh;
@@ -1138,6 +1156,7 @@
11381156
E9942B80203C058C00C163AF /* QRGeneratorViewController.swift in Sources */,
11391157
E921597520611A6A0000CA5C /* AdamantReachability.swift in Sources */,
11401158
E9150BA22066DA210065A985 /* ChatTransaction+CoreDataProperties.swift in Sources */,
1159+
6455E9F321075D8000B2E94C /* AdamantAddressBookService.swift in Sources */,
11411160
E9204B5020C94C4A00F3B9AB /* Date+humanizedString.swift in Sources */,
11421161
E9E7CD9120026FA100DFC4DB /* SwinjectDependencies.swift in Sources */,
11431162
E9E7CD8B20026B0600DFC4DB /* AccountService.swift in Sources */,
@@ -1146,6 +1165,7 @@
11461165
E9B3D39A201F90570019EB36 /* AccountsProvider.swift in Sources */,
11471166
E950652320404C84008352E5 /* AdamantUriTools.swift in Sources */,
11481167
E95F85C7200A9B070070534A /* ChatTableViewCell.swift in Sources */,
1168+
6455E9F121075D3600B2E94C /* AddressBookService.swift in Sources */,
11491169
E983AE2A20E65F3200497E1A /* AccountViewController.swift in Sources */,
11501170
E9E7CD932002740500DFC4DB /* AdamantAccountService.swift in Sources */,
11511171
E9147B612050599000145913 /* LoginViewController+QR.swift in Sources */,
@@ -1183,6 +1203,7 @@
11831203
E93EFE13200D1156000BB482 /* ChatViewController.swift in Sources */,
11841204
E927171E20C04614002BB9A6 /* UIColor+hex.swift in Sources */,
11851205
E9B3D39E201F99F40019EB36 /* DataProvider.swift in Sources */,
1206+
643ED0B12109F4BD005A9FDA /* JSAdamantCore+Native.swift in Sources */,
11861207
E93EB0A320DA4CCA001F9601 /* Node.swift in Sources */,
11871208
E9E7CDC02003AF6D00DFC4DB /* AdamantCellFactory.swift in Sources */,
11881209
E93B0D742028B21400126346 /* ChatsProvider.swift in Sources */,
@@ -1230,6 +1251,7 @@
12301251
E98FC34420F920BD00032D65 /* UIFont+adamant.swift in Sources */,
12311252
644EC35720EFAAB700F40C73 /* DelegatesListViewController.swift in Sources */,
12321253
E9C51EF12013F18000385EB7 /* NewChatViewController.swift in Sources */,
1254+
E9B4E1A8210F079E007E77FC /* DoubleDetailsTableViewCell.swift in Sources */,
12331255
E913C9171FFFAF76001A83F7 /* JSAdamantCore.swift in Sources */,
12341256
E9502740202E257E002C1098 /* RepeaterService.swift in Sources */,
12351257
E93D7AC02052CF63005D19DC /* AdamantNotificationService.swift in Sources */,

Adamant/AppDelegate.swift

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
7777
var accountService: AccountService!
7878
var notificationService: NotificationsService!
7979
var dialogService: DialogService!
80+
var addressBookService: AddressBookService!
8081

8182
// MARK: - Lifecycle
8283

@@ -87,13 +88,14 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
8788
accountService = container.resolve(AccountService.self)
8889
notificationService = container.resolve(NotificationsService.self)
8990
dialogService = container.resolve(DialogService.self)
91+
addressBookService = container.resolve(AddressBookService.self)
9092

9193
// MARK: 2. Init UI
9294
window = UIWindow(frame: UIScreen.main.bounds)
9395
window!.rootViewController = UITabBarController()
9496
window!.rootViewController?.view.backgroundColor = .white
9597
window!.makeKeyAndVisible()
96-
window!.tintColor = UIColor.adamantPrimary
98+
window!.tintColor = UIColor.adamant.primary
9799

98100

99101
// MARK: 3. Show login
@@ -117,8 +119,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
117119
account.tabBarItem.title = String.adamantLocalized.tabItems.account
118120
account.tabBarItem.image = #imageLiteral(resourceName: "account-tab")
119121

120-
chatList.tabBarItem.badgeColor = UIColor.adamantPrimary
121-
account.tabBarItem.badgeColor = UIColor.adamantPrimary
122+
chatList.tabBarItem.badgeColor = UIColor.adamant.primary
123+
account.tabBarItem.badgeColor = UIColor.adamant.primary
122124

123125
tabbar.setViewControllers([chatList, account], animated: false)
124126
}
@@ -160,14 +162,28 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
160162
}
161163

162164
// Register repeater services
163-
if let chatsProvider = container.resolve(ChatsProvider.self),
164-
let transfersProvider = container.resolve(TransfersProvider.self),
165-
let accountService = container.resolve(AccountService.self) {
165+
if let chatsProvider = container.resolve(ChatsProvider.self) {
166166
repeater.registerForegroundCall(label: "chatsProvider", interval: 3, queue: .global(qos: .utility), callback: chatsProvider.update)
167+
} else {
168+
dialogService.showError(withMessage: "Failed to register ChatsProvider autoupdate. Please, report a bug", error: nil)
169+
}
170+
171+
if let transfersProvider = container.resolve(TransfersProvider.self) {
167172
repeater.registerForegroundCall(label: "transfersProvider", interval: 15, queue: .global(qos: .utility), callback: transfersProvider.update)
173+
} else {
174+
dialogService.showError(withMessage: "Failed to register TransfersProvider autoupdate. Please, report a bug", error: nil)
175+
}
176+
177+
if let accountService = container.resolve(AccountService.self) {
168178
repeater.registerForegroundCall(label: "accountService", interval: 15, queue: .global(qos: .utility), callback: accountService.update)
169179
} else {
170-
fatalError("Failed to get chatsProvider")
180+
dialogService.showError(withMessage: "Failed to register AccountService autoupdate. Please, report a bug", error: nil)
181+
}
182+
183+
if let addressBookService = container.resolve(AddressBookService.self) {
184+
repeater.registerForegroundCall(label: "addressBookService", interval: 15, queue: .global(qos: .utility), callback: addressBookService.update)
185+
} else {
186+
dialogService.showError(withMessage: "Failed to register AddressBookService autoupdate. Please, report a bug", error: nil)
171187
}
172188

173189

@@ -194,9 +210,10 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
194210
func applicationWillResignActive(_ application: UIApplication) {
195211
repeater.pauseAll()
196212
}
197-
213+
198214
func applicationDidEnterBackground(_ application: UIApplication) {
199215
repeater.pauseAll()
216+
addressBookService.saveIfNeeded()
200217
}
201218

202219
// MARK: Notifications
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"images" : [
3+
{
4+
"idiom" : "universal",
5+
"filename" : "row_free-tokens.png",
6+
"scale" : "1x"
7+
},
8+
{
9+
"idiom" : "universal",
10+
"filename" : "row_free-tokens@2x.png",
11+
"scale" : "2x"
12+
},
13+
{
14+
"idiom" : "universal",
15+
"filename" : "row_free-tokens@3x.png",
16+
"scale" : "3x"
17+
}
18+
],
19+
"info" : {
20+
"version" : 1,
21+
"author" : "xcode"
22+
},
23+
"properties" : {
24+
"template-rendering-intent" : "template"
25+
}
26+
}
Loading
Loading
Loading
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"info" : {
3+
"version" : 1,
4+
"author" : "xcode"
5+
}
6+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"images" : [
3+
{
4+
"idiom" : "universal",
5+
"filename" : "swipe_mark-as-read.png",
6+
"scale" : "1x"
7+
},
8+
{
9+
"idiom" : "universal",
10+
"filename" : "swipe_mark-as-read@2x.png",
11+
"scale" : "2x"
12+
},
13+
{
14+
"idiom" : "universal",
15+
"filename" : "swipe_mark-as-read@3x.png",
16+
"scale" : "3x"
17+
}
18+
],
19+
"info" : {
20+
"version" : 1,
21+
"author" : "xcode"
22+
},
23+
"properties" : {
24+
"template-rendering-intent" : "template"
25+
}
26+
}
Loading
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"images" : [
3+
{
4+
"idiom" : "universal",
5+
"filename" : "swipe_more.png",
6+
"scale" : "1x"
7+
},
8+
{
9+
"idiom" : "universal",
10+
"filename" : "swipe_more@2x.png",
11+
"scale" : "2x"
12+
},
13+
{
14+
"idiom" : "universal",
15+
"filename" : "swipe_more@3x.png",
16+
"scale" : "3x"
17+
}
18+
],
19+
"info" : {
20+
"version" : 1,
21+
"author" : "xcode"
22+
},
23+
"properties" : {
24+
"template-rendering-intent" : "template"
25+
}
26+
}
Loading
Loading
Loading

Adamant/Assets/l18n/de.lproj/Localizable.strings

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,9 @@
142142
/* Product name */
143143
"ADAMANT" = "ADAMANT";
144144

145+
/* AddressBookService: Not enought money to save address into blockchain */
146+
"AddressBookService.Error.NotEnoughtMoney" = "Nicht genug Tokens, um Daten auf der Blockchain zu speichern";
147+
145148
/* Application: Failed to send deviceToken to ANS error format. %@ for error description */
146149
"Application.deviceTokenErrorFormat" = "Anmeldefehler in ANS: %@";
147150

@@ -214,6 +217,15 @@
214217
/* Chat: 'Sent funds' buble 'Tap for details' tip */
215218
"ChatScene.tapForDetails" = "Tippen Sie für Details";
216219

220+
/* Chat: Body for actions menu */
221+
"ChatScene.Actions.Body" = "Neuer Name für %@";
222+
223+
/* Chat: 'Rename' action in actions menu */
224+
"ChatScene.Actions.Rename" = "Umbenennen";
225+
226+
/* Chat: 'Name' field in actions menu */
227+
"ChatScene.Actions.NamePlaceholder" = "Name";
228+
217229
/* Delegates page: scene title */
218230
"Delegates.Title" = "Delegate";
219231

@@ -577,6 +589,9 @@
577589
/* Export transaction: 'Share transaction URL' button */
578590
"TransactionDetailsScene.Share.URL" = "URL";
579591

592+
/* Transaction details: 'Your address' flag. */
593+
"TransactionDetailsScene.YourAddress" = "Sie";
594+
580595
/* TransfersProvider: Transaction not found error. %@ for transaction's ID */
581596
"TransfersProvider.Error.TransactionNotFoundFormat" = "Transaktion mit der ID %@ nicht gefunden";
582597

0 commit comments

Comments
 (0)