Skip to content

Commit cdfb984

Browse files
Merge pull request #790 from pharms-eth/develop
2 parents d5cf381 + 62b7437 commit cdfb984

File tree

2 files changed

+42
-31
lines changed

2 files changed

+42
-31
lines changed

Sources/Web3Core/KeystoreManager/KeystoreParams.swift

Lines changed: 41 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,41 +4,69 @@
44

55
import Foundation
66

7-
public struct KdfParamsV3: Decodable, Encodable {
7+
public struct KdfParamsV3: Codable {
88
var salt: String
99
var dklen: Int
1010
var n: Int?
1111
var p: Int?
1212
var r: Int?
1313
var c: Int?
1414
var prf: String?
15+
16+
public init(salt: String, dklen: Int, n: Int? = nil, p: Int? = nil, r: Int? = nil, c: Int? = nil, prf: String? = nil) {
17+
self.salt = salt
18+
self.dklen = dklen
19+
self.n = n
20+
self.p = p
21+
self.r = r
22+
self.c = c
23+
self.prf = prf
24+
}
1525
}
1626

17-
public struct CipherParamsV3: Decodable, Encodable {
27+
public struct CipherParamsV3: Codable {
1828
var iv: String
29+
30+
public init(iv: String) {
31+
self.iv = iv
32+
}
1933
}
2034

21-
public struct CryptoParamsV3: Decodable, Encodable {
35+
public struct CryptoParamsV3: Codable {
2236
var ciphertext: String
2337
var cipher: String
2438
var cipherparams: CipherParamsV3
2539
var kdf: String
2640
var kdfparams: KdfParamsV3
2741
var mac: String
2842
var version: String?
43+
44+
public init(ciphertext: String, cipher: String, cipherparams: CipherParamsV3, kdf: String, kdfparams: KdfParamsV3, mac: String, version: String? = nil) {
45+
self.ciphertext = ciphertext
46+
self.cipher = cipher
47+
self.cipherparams = cipherparams
48+
self.kdf = kdf
49+
self.kdfparams = kdfparams
50+
self.mac = mac
51+
self.version = version
52+
}
2953
}
3054

3155
public protocol AbstractKeystoreParams: Codable {
3256
var crypto: CryptoParamsV3 { get }
3357
var id: String? { get }
3458
var version: Int { get }
3559
var isHDWallet: Bool { get }
36-
3760
}
3861

3962
public struct PathAddressPair: Codable {
40-
let path: String
41-
let address: String
63+
public let path: String
64+
public let address: String
65+
66+
public init(path: String, address: String) {
67+
self.path = path
68+
self.address = address
69+
}
4270
}
4371

4472
public struct KeystoreParamsBIP32: AbstractKeystoreParams {
@@ -47,21 +75,7 @@ public struct KeystoreParamsBIP32: AbstractKeystoreParams {
4775
public var version: Int
4876
public var isHDWallet: Bool
4977

50-
@available(*, deprecated, message: "Please use pathAddressPairs instead")
51-
var pathToAddress: [String: String] {
52-
get {
53-
return self.pathAddressPairs.reduce(into: [String: String]()) {
54-
$0[$1.path] = $1.address
55-
}
56-
}
57-
set {
58-
for pair in newValue {
59-
self.pathAddressPairs.append(PathAddressPair(path: pair.0, address: pair.1))
60-
}
61-
}
62-
}
63-
64-
var pathAddressPairs: [PathAddressPair]
78+
public internal(set) var pathAddressPairs: [PathAddressPair]
6579
var rootPath: String?
6680

6781
public init(crypto cr: CryptoParamsV3, id i: String, version ver: Int = 32, rootPath: String? = nil) {
@@ -72,23 +86,20 @@ public struct KeystoreParamsBIP32: AbstractKeystoreParams {
7286
self.rootPath = rootPath
7387
self.isHDWallet = true
7488
}
75-
7689
}
7790

7891
public struct KeystoreParamsV3: AbstractKeystoreParams {
92+
public var address: String?
7993
public var crypto: CryptoParamsV3
8094
public var id: String?
8195
public var version: Int
8296
public var isHDWallet: Bool
8397

84-
var address: String?
85-
86-
public init(address ad: String?, crypto cr: CryptoParamsV3, id i: String, version ver: Int) {
87-
address = ad
88-
self.crypto = cr
89-
self.id = i
90-
self.version = ver
98+
public init(address: String?, crypto: CryptoParamsV3, id: String, version: Int) {
99+
self.address = address
100+
self.crypto = crypto
101+
self.id = id
102+
self.version = version
91103
self.isHDWallet = false
92104
}
93-
94105
}

Sources/Web3Core/Utility/String+Extension.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ extension String {
5050
return String(self[start..<end])
5151
}
5252

53-
func leftPadding(toLength: Int, withPad character: Character) -> String {
53+
public func leftPadding(toLength: Int, withPad character: Character) -> String {
5454
let stringLength = self.count
5555
if stringLength < toLength {
5656
return String(repeatElement(character, count: toLength - stringLength)) + self

0 commit comments

Comments
 (0)