cardano_wallet 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,15 +1,16 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CardanoWallet
4
+ ##
5
+ # misc
2
6
  module Misc
3
-
4
7
  def self.new(opt)
5
8
  Init.new opt
6
9
  end
7
10
 
11
+ ##
12
+ # Base Class for Misc API
8
13
  class Init < Base
9
- def initialize opt
10
- super
11
- end
12
-
13
14
  # Call API for Network
14
15
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Network
15
16
  def network
@@ -30,72 +31,57 @@ module CardanoWallet
30
31
  def settings
31
32
  Settings.new @opt
32
33
  end
33
-
34
34
  end
35
35
 
36
36
  # API for Network
37
37
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Settings
38
38
  class Settings < Base
39
- def initialize opt
40
- super
41
- end
42
-
43
39
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getSettings
44
40
  def get
45
- self.class.get("/settings")
41
+ self.class.get('/settings')
46
42
  end
47
43
 
48
44
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/putSettings
49
45
  def update(params)
50
46
  CardanoWallet::Utils.verify_param_is_hash!(params)
51
- self.class.put("/settings",
52
- :body => {"settings" => params}.to_json,
53
- :headers => { 'Content-Type' => 'application/json' }
54
- )
47
+ self.class.put('/settings',
48
+ body: { 'settings' => params }.to_json,
49
+ headers: { 'Content-Type' => 'application/json' })
55
50
  end
56
51
  end
57
52
 
58
53
  # API for Network
59
54
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Network
60
55
  class Network < Base
61
- def initialize opt
62
- super
63
- end
64
-
65
56
  # Get network information
66
57
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getNetworkInformation
67
58
  def information
68
- self.class.get("/network/information")
59
+ self.class.get('/network/information')
69
60
  end
70
61
 
71
62
  # Check network clock
72
63
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getNetworkClock
73
64
  def clock
74
- self.class.get("/network/clock")
65
+ self.class.get('/network/clock')
75
66
  end
76
67
 
77
68
  # Check network parameters
78
69
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getNetworkParameters
79
70
  def parameters
80
- self.class.get("/network/parameters")
71
+ self.class.get('/network/parameters')
81
72
  end
82
-
83
73
  end
84
74
 
85
75
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Utils
86
76
  class Utils < Base
87
- def initialize opt
88
- super
89
- end
90
-
91
77
  # @see https://input-output-hk.github.io/cardano-wallet/api/#operation/signMetadata
92
78
  def sign_metadata(wid, role, index, pass, metadata)
93
79
  payload = { passphrase: pass }
94
80
  payload[:metadata] = metadata if metadata
95
81
 
96
82
  self.class.post("/wallets/#{wid}/signatures/#{role}/#{index}",
97
- :body => payload.to_json,
98
- :headers => { 'Content-Type' => 'application/json' } )
83
+ body: payload.to_json,
84
+ headers: { 'Content-Type' => 'application/json' })
99
85
  end
100
86
 
101
87
  # @see https://input-output-hk.github.io/cardano-wallet/api/#operation/getWalletKey
@@ -111,10 +97,10 @@ module CardanoWallet
111
97
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postAnyAddress
112
98
  def post_address(payload)
113
99
  CardanoWallet::Utils.verify_param_is_hash!(payload)
114
- self.class.post("/addresses",
115
- :body => payload.to_json,
116
- :headers => { 'Content-Type' => 'application/json',
117
- 'Accept' => 'application/json'} )
100
+ self.class.post('/addresses',
101
+ body: payload.to_json,
102
+ headers: { 'Content-Type' => 'application/json',
103
+ 'Accept' => 'application/json' })
118
104
  end
119
105
 
120
106
  # Current SMASH health
@@ -122,26 +108,21 @@ module CardanoWallet
122
108
  #
123
109
  # @example
124
110
  # smash_health({url: "https://smash.cardano-mainnet.iohk.io/"})
125
- def smash_health(q = {})
126
- q.empty? ? query = '' : query = CardanoWallet::Utils.to_query(q)
127
- self.class.get("/smash/health#{query}")
111
+ def smash_health(query = {})
112
+ query_formatted = query.empty? ? '' : CardanoWallet::Utils.to_query(query)
113
+ self.class.get("/smash/health#{query_formatted}")
128
114
  end
129
-
130
115
  end
131
116
 
132
117
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Proxy
133
118
  class Proxy < Base
134
- def initialize opt
135
- super
136
- end
137
-
138
119
  # Submit a transaction that was created and signed outside of cardano-wallet.
139
120
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postExternalTransaction
140
121
  # @param binary_blob [String] Signed transaction message binary blob.
141
122
  def submit_external_transaction(binary_blob)
142
- self.class.post("/proxy/transactions",
143
- :body => binary_blob,
144
- :headers => { 'Content-Type' => 'application/octet-stream' })
123
+ self.class.post('/proxy/transactions',
124
+ body: binary_blob,
125
+ headers: { 'Content-Type' => 'application/octet-stream' })
145
126
  end
146
127
  end
147
128
  end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CardanoWallet
4
+ # Init API for Shelley Shared wallets
5
+ module Shared
6
+ def self.new(opt)
7
+ Init.new opt
8
+ end
9
+
10
+ ##
11
+ # Base class for Shelley Shared Wallets API
12
+ class Init < Base
13
+ # Call API for Wallets
14
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Shared-Wallets
15
+ def wallets
16
+ Wallets.new @opt
17
+ end
18
+ end
19
+
20
+ # API for Wallets
21
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Shared-Wallets
22
+ class Wallets < Base
23
+ # List all wallets
24
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listWallets
25
+ # def list
26
+ # self.class.get('/shared-wallets')
27
+ # end
28
+
29
+ # Get wallet details
30
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getSharedWallet
31
+ def get(wid)
32
+ self.class.get("/shared-wallets/#{wid}")
33
+ end
34
+
35
+ # Create a wallet based on the params.
36
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postSharedWallet
37
+ #
38
+ # @example Create wallet from mnemonic sentence
39
+ # create({name: "Wallet from mnemonic_sentence",
40
+ # passphrase: "Secure Passphrase",
41
+ # mnemonic_sentence: %w[story egg fun ... ],
42
+ # account_index: "1852H",
43
+ # payment_script_template: {...},
44
+ # ...
45
+ # })
46
+ def create(params)
47
+ Utils.verify_param_is_hash!(params)
48
+ self.class.post('/shared-wallets',
49
+ body: params.to_json,
50
+ headers: { 'Content-Type' => 'application/json' })
51
+ end
52
+
53
+ # Delete wallet
54
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/deleteSharedWallet
55
+ def delete(wid)
56
+ self.class.delete("/shared-wallets/#{wid}")
57
+ end
58
+
59
+ # Update payment script
60
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/patchSharedWalletInPayment
61
+ def update_payment_script(wid, cosigner, acc_pub_key)
62
+ self.class.patch("/shared-wallets/#{wid}/payment-script-template",
63
+ body: { cosigner: cosigner, account_public_key: acc_pub_key }.to_json,
64
+ headers: { 'Content-Type' => 'application/json' })
65
+ end
66
+
67
+ # Update delegation script
68
+ # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/patchSharedWalletInDelegation
69
+ def update_delegation_script(wid, cosigner, acc_pub_key)
70
+ self.class.patch("/shared-wallets/#{wid}/delegation-script-template",
71
+ body: { cosigner: cosigner, account_public_key: acc_pub_key }.to_json,
72
+ headers: { 'Content-Type' => 'application/json' })
73
+ end
74
+ end
75
+ end
76
+ end
@@ -1,17 +1,15 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CardanoWallet
2
4
  # Init API for Shelley
3
5
  module Shelley
4
-
5
6
  def self.new(opt)
6
7
  Init.new opt
7
8
  end
8
9
 
10
+ ##
11
+ # Base class for Shelley API
9
12
  class Init < Base
10
-
11
- def initialize opt
12
- super
13
- end
14
-
15
13
  # Call API for Wallets
16
14
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Wallets
17
15
  def wallets
@@ -59,14 +57,11 @@ module CardanoWallet
59
57
  def assets
60
58
  Assets.new @opt
61
59
  end
62
-
63
60
  end
64
61
 
62
+ ##
63
+ # Base class for Shelley Assets API
65
64
  class Assets < Base
66
- def initialize opt
67
- super
68
- end
69
-
70
65
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listAssets
71
66
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getAsset
72
67
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getAssetDefault
@@ -76,23 +71,20 @@ module CardanoWallet
76
71
  ep += "/#{asset_name}" if asset_name
77
72
  self.class.get(ep)
78
73
  end
79
-
80
74
  end
81
75
 
76
+ ##
77
+ # Base class for Shelley Keys API
82
78
  class Keys < Base
83
- def initialize opt
84
- super
85
- end
86
-
87
79
  # @see https://input-output-hk.github.io/cardano-wallet/api/#operation/signMetadata
88
80
  def sign_metadata(wid, role, index, pass, metadata)
89
81
  payload = { passphrase: pass }
90
82
  payload[:metadata] = metadata if metadata
91
83
 
92
84
  self.class.post("/wallets/#{wid}/signatures/#{role}/#{index}",
93
- :body => payload.to_json,
94
- :headers => { 'Content-Type' => 'application/json',
95
- 'Accept' => 'application/octet-stream'} )
85
+ body: payload.to_json,
86
+ headers: { 'Content-Type' => 'application/json',
87
+ 'Accept' => 'application/octet-stream' })
96
88
  end
97
89
 
98
90
  # @see https://input-output-hk.github.io/cardano-wallet/api/#operation/getWalletKey
@@ -104,24 +96,18 @@ module CardanoWallet
104
96
  def create_acc_public_key(wid, index, pass, extended)
105
97
  payload = { passphrase: pass, extended: extended }
106
98
  self.class.post("/wallets/#{wid}/keys/#{index}",
107
- :body => payload.to_json,
108
- :headers => { 'Content-Type' => 'application/json' }
109
- )
99
+ body: payload.to_json,
100
+ headers: { 'Content-Type' => 'application/json' })
110
101
  end
111
-
112
102
  end
113
103
 
114
104
  # API for Wallets
115
105
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Wallets
116
106
  class Wallets < Base
117
- def initialize opt
118
- super
119
- end
120
-
121
107
  # List all wallets
122
108
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listWallets
123
109
  def list
124
- self.class.get("/wallets")
110
+ self.class.get('/wallets')
125
111
  end
126
112
 
127
113
  # Get wallet details
@@ -136,19 +122,18 @@ module CardanoWallet
136
122
  # @example Create wallet from mnemonic sentence
137
123
  # create({name: "Wallet from mnemonic_sentence",
138
124
  # passphrase: "Secure Passphrase",
139
- # mnemonic_sentence: %w[story egg fun dismiss gasp mad spoon human cloud become garbage panel rhythm knee help],
125
+ # mnemonic_sentence: %w[story egg fun ... ],
140
126
  # })
141
127
  # @example Create wallet from pub key
142
128
  # create({name: "Wallet from pub key",
143
- # account_public_key: "b47546e661b6c1791452d003d375756dde6cac2250093ce4630f16b9b9c0ac87411337bda4d5bc0216462480b809824ffb48f17e08d95ab9f1b91d391e48e66b",
129
+ # account_public_key: "b47546e...",
144
130
  # address_pool_gap: 20,
145
131
  # })
146
132
  def create(params)
147
133
  Utils.verify_param_is_hash!(params)
148
- self.class.post( "/wallets",
149
- :body => params.to_json,
150
- :headers => { 'Content-Type' => 'application/json' }
151
- )
134
+ self.class.post('/wallets',
135
+ body: params.to_json,
136
+ headers: { 'Content-Type' => 'application/json' })
152
137
  end
153
138
 
154
139
  # Delete wallet
@@ -165,9 +150,8 @@ module CardanoWallet
165
150
  def update_metadata(wid, params)
166
151
  Utils.verify_param_is_hash!(params)
167
152
  self.class.put("/wallets/#{wid}",
168
- :body => params.to_json,
169
- :headers => { 'Content-Type' => 'application/json' }
170
- )
153
+ body: params.to_json,
154
+ headers: { 'Content-Type' => 'application/json' })
171
155
  end
172
156
 
173
157
  # See wallet's utxo distribution
@@ -184,57 +168,50 @@ module CardanoWallet
184
168
  def update_passphrase(wid, params)
185
169
  Utils.verify_param_is_hash!(params)
186
170
  self.class.put("/wallets/#{wid}/passphrase",
187
- :body => params.to_json,
188
- :headers => { 'Content-Type' => 'application/json' }
189
- )
171
+ body: params.to_json,
172
+ headers: { 'Content-Type' => 'application/json' })
190
173
  end
191
174
  end
192
175
 
193
176
  # API for Addresses
194
177
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Addresses
195
178
  class Addresses < Base
196
- def initialize opt
197
- super
198
- end
199
-
200
179
  # List addresses
201
180
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listAddresses
202
181
  #
203
182
  # @example
204
183
  # list(wid, {state: "used"})
205
- def list(wid, q = {})
206
- q.empty? ? query = '' : query = Utils.to_query(q)
207
- self.class.get("/wallets/#{wid}/addresses#{query}")
184
+ def list(wid, query = {})
185
+ query_formatted = query.empty? ? '' : Utils.to_query(query)
186
+ self.class.get("/wallets/#{wid}/addresses#{query_formatted}")
208
187
  end
209
188
  end
210
189
 
211
190
  # API for CoinSelections
212
191
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Coin-Selections
213
192
  class CoinSelections < Base
214
- def initialize opt
215
- super
216
- end
217
-
218
193
  # Show random coin selection for particular payment
219
194
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/selectCoins
220
195
  #
221
196
  # @example
222
197
  # random(wid, [{addr1: 1000000}, {addr2: 1000000}])
223
- # random(wid, [{ "address": "addr1..", "amount": { "quantity": 42000000, "unit": "lovelace" }, "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ])
198
+ # random(wid, [{ "address": "addr1..",
199
+ # "amount": { "quantity": 42000000, "unit": "lovelace" },
200
+ # "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ])
224
201
  def random(wid, payments, withdrawal = nil, metadata = nil)
225
202
  Utils.verify_param_is_array!(payments)
226
- if payments.any?{|p| p.has_key?("address".to_sym) || p.has_key?("address")}
227
- payments_formatted = payments
228
- else
229
- payments_formatted = Utils.format_payments(payments)
230
- end
231
- payload = { :payments => payments_formatted }
203
+ payments_formatted = if payments.any? { |p| p.key?(:address) || p.key?('address') }
204
+ payments
205
+ else
206
+ Utils.format_payments(payments)
207
+ end
208
+ payload = { payments: payments_formatted }
232
209
  payload[:withdrawal] = withdrawal if withdrawal
233
210
  payload[:metadata] = metadata if metadata
234
211
 
235
212
  self.class.post("/wallets/#{wid}/coin-selections/random",
236
- :body => payload.to_json,
237
- :headers => { 'Content-Type' => 'application/json' })
213
+ body: payload.to_json,
214
+ headers: { 'Content-Type' => 'application/json' })
238
215
  end
239
216
 
240
217
  # Coin selection -> Delegation action
@@ -246,18 +223,14 @@ module CardanoWallet
246
223
  def random_deleg(wid, deleg_action)
247
224
  Utils.verify_param_is_hash!(deleg_action)
248
225
  self.class.post("/wallets/#{wid}/coin-selections/random",
249
- :body => {:delegation_action => deleg_action}.to_json,
250
- :headers => { 'Content-Type' => 'application/json' })
226
+ body: { delegation_action: deleg_action }.to_json,
227
+ headers: { 'Content-Type' => 'application/json' })
251
228
  end
252
229
  end
253
230
 
254
231
  # API for Transactions
255
232
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Transactions
256
233
  class Transactions < Base
257
- def initialize opt
258
- super
259
- end
260
-
261
234
  # Get tx by id
262
235
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getTransaction
263
236
  def get(wid, tx_id)
@@ -269,9 +242,9 @@ module CardanoWallet
269
242
  #
270
243
  # @example
271
244
  # list(wid, {start: "2012-09-25T10:15:00Z", order: "descending"})
272
- def list(wid, q = {})
273
- q.empty? ? query = '' : query = Utils.to_query(q)
274
- self.class.get("/wallets/#{wid}/transactions#{query}")
245
+ def list(wid, query = {})
246
+ query_formatted = query.empty? ? '' : Utils.to_query(query)
247
+ self.class.get("/wallets/#{wid}/transactions#{query_formatted}")
275
248
  end
276
249
 
277
250
  # Create a transaction from the wallet
@@ -285,24 +258,26 @@ module CardanoWallet
285
258
  #
286
259
  # @example
287
260
  # create(wid, passphrase, [{addr1: 1000000}, {addr2: 1000000}], 'self', {"1": "abc"}, ttl = 10)
288
- # create(wid, passphrase, [{ "address": "addr1..", "amount": { "quantity": 42000000, "unit": "lovelace" }, "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ], 'self', {"1": "abc"}, ttl = 10)
261
+ # create(wid, passphrase, [{ "address": "addr1..",
262
+ # "amount": { "quantity": 42000000, "unit": "lovelace" },
263
+ # "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ],
264
+ # 'self', {"1": "abc"}, ttl = 10)
289
265
  def create(wid, passphrase, payments, withdrawal = nil, metadata = nil, ttl = nil)
290
266
  Utils.verify_param_is_array!(payments)
291
- if payments.any?{|p| p.has_key?("address".to_sym) || p.has_key?("address")}
292
- payments_formatted = payments
293
- else
294
- payments_formatted = Utils.format_payments(payments)
295
- end
296
- payload = { :payments => payments_formatted,
297
- :passphrase => passphrase
298
- }
267
+ payments_formatted = if payments.any? { |p| p.key?(:address) || p.key?('address') }
268
+ payments
269
+ else
270
+ Utils.format_payments(payments)
271
+ end
272
+ payload = { payments: payments_formatted,
273
+ passphrase: passphrase }
299
274
  payload[:withdrawal] = withdrawal if withdrawal
300
275
  payload[:metadata] = metadata if metadata
301
- payload[:time_to_live] = { quantity: ttl, unit: "second" } if ttl
276
+ payload[:time_to_live] = { quantity: ttl, unit: 'second' } if ttl
302
277
 
303
278
  self.class.post("/wallets/#{wid}/transactions",
304
- :body => payload.to_json,
305
- :headers => { 'Content-Type' => 'application/json' } )
279
+ body: payload.to_json,
280
+ headers: { 'Content-Type' => 'application/json' })
306
281
  end
307
282
 
308
283
  # Estimate fees for transaction
@@ -310,24 +285,27 @@ module CardanoWallet
310
285
  #
311
286
  # @example
312
287
  # payment_fees(wid, [{addr1: 1000000}, {addr2: 1000000}], {"1": "abc"}, ttl = 10)
313
- # payment_fees(wid, [{ "address": "addr1..", "amount": { "quantity": 42000000, "unit": "lovelace" }, "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ], {"1": "abc"}, ttl = 10)
288
+ # payment_fees(wid, [{ "address": "addr1..",
289
+ # "amount": { "quantity": 42000000, "unit": "lovelace" },
290
+ # "assets": [{"policy_id": "pid", "asset_name": "name", "quantity": 0 } ] } ],
291
+ # {"1": "abc"}, ttl = 10)
314
292
  def payment_fees(wid, payments, withdrawal = nil, metadata = nil, ttl = nil)
315
293
  Utils.verify_param_is_array!(payments)
316
- if payments.any?{|p| p.has_key?("address".to_sym) || p.has_key?("address")}
317
- payments_formatted = payments
318
- else
319
- payments_formatted = Utils.format_payments(payments)
320
- end
294
+ payments_formatted = if payments.any? { |p| p.key?(:address) || p.key?('address') }
295
+ payments
296
+ else
297
+ Utils.format_payments(payments)
298
+ end
321
299
 
322
- payload = { :payments => payments_formatted }
300
+ payload = { payments: payments_formatted }
323
301
 
324
302
  payload[:withdrawal] = withdrawal if withdrawal
325
303
  payload[:metadata] = metadata if metadata
326
- payload[:time_to_live] = { quantity: ttl, unit: "second" } if ttl
304
+ payload[:time_to_live] = { quantity: ttl, unit: 'second' } if ttl
327
305
 
328
306
  self.class.post("/wallets/#{wid}/payment-fees",
329
- :body => payload.to_json,
330
- :headers => { 'Content-Type' => 'application/json' } )
307
+ body: payload.to_json,
308
+ headers: { 'Content-Type' => 'application/json' })
331
309
  end
332
310
 
333
311
  # Forget a transaction
@@ -340,10 +318,6 @@ module CardanoWallet
340
318
  # API for StakePools
341
319
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Stake-Pools
342
320
  class StakePools < Base
343
- def initialize opt
344
- super
345
- end
346
-
347
321
  # Stake pools maintenance actions
348
322
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postMaintenanceAction
349
323
  #
@@ -351,21 +325,21 @@ module CardanoWallet
351
325
  # maintenance_action({ "maintenance_action": "gc_stake_pools" })
352
326
  def trigger_maintenance_actions(action = {})
353
327
  Utils.verify_param_is_hash!(action)
354
- self.class.post("/stake-pools/maintenance-actions",
355
- :body => action.to_json,
356
- :headers => { 'Content-Type' => 'application/json' } )
328
+ self.class.post('/stake-pools/maintenance-actions',
329
+ body: action.to_json,
330
+ headers: { 'Content-Type' => 'application/json' })
357
331
  end
358
332
 
359
333
  # Metdata GC Status
360
334
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getMaintenanceActions
361
335
  def view_maintenance_actions
362
- self.class.get("/stake-pools/maintenance-actions")
336
+ self.class.get('/stake-pools/maintenance-actions')
363
337
  end
364
338
 
365
339
  # List all stake pools
366
340
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listStakePools
367
341
  def list(stake = {})
368
- stake.empty? ? query = '' : query = Utils.to_query(stake)
342
+ query = stake.empty? ? '' : Utils.to_query(stake)
369
343
  self.class.get("/stake-pools#{query}")
370
344
  end
371
345
 
@@ -373,16 +347,16 @@ module CardanoWallet
373
347
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/joinStakePool
374
348
  def join(sp_id, wid, passphrase)
375
349
  self.class.put("/stake-pools/#{sp_id}/wallets/#{wid}",
376
- :body => { :passphrase => passphrase }.to_json,
377
- :headers => { 'Content-Type' => 'application/json' } )
350
+ body: { passphrase: passphrase }.to_json,
351
+ headers: { 'Content-Type' => 'application/json' })
378
352
  end
379
353
 
380
354
  # Quit stape pool
381
355
  # @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/quitStakePool
382
356
  def quit(wid, passphrase)
383
357
  self.class.delete("#{@api}/stake-pools/*/wallets/#{wid}",
384
- :body => { :passphrase => passphrase }.to_json,
385
- :headers => { 'Content-Type' => 'application/json' } )
358
+ body: { passphrase: passphrase }.to_json,
359
+ headers: { 'Content-Type' => 'application/json' })
386
360
  end
387
361
 
388
362
  # Estimate delegation fees
@@ -395,10 +369,6 @@ module CardanoWallet
395
369
  # Shelley migrations
396
370
  # @see https://input-output-hk.github.io/cardano-wallet/api/#tag/Migrations
397
371
  class Migrations < Base
398
- def initialize opt
399
- super
400
- end
401
-
402
372
  # Calculate migration cost
403
373
  # @see https://input-output-hk.github.io/cardano-wallet/api/#operation/getShelleyWalletMigrationInfo
404
374
  def cost(wid)
@@ -412,12 +382,10 @@ module CardanoWallet
412
382
  # @param [Array] array of addresses
413
383
  def migrate(wid, passphrase, addresses)
414
384
  self.class.post("/wallets/#{wid}/migrations",
415
- :body => { :addresses => addresses,
416
- :passphrase => passphrase
417
- }.to_json,
418
- :headers => { 'Content-Type' => 'application/json' } )
385
+ body: { addresses: addresses,
386
+ passphrase: passphrase }.to_json,
387
+ headers: { 'Content-Type' => 'application/json' })
419
388
  end
420
-
421
389
  end
422
390
  end
423
391
  end