ton_sdk_client 1.17.0 → 1.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -63
- data/README.md +2 -2
- data/lib/ton_sdk_client/abi.rb +50 -29
- data/lib/ton_sdk_client/client.rb +1 -0
- data/lib/ton_sdk_client/config.rb +4 -2
- data/lib/ton_sdk_client/crypto.rb +32 -0
- data/lib/ton_sdk_client/net.rb +146 -50
- data/lib/ton_sdk_client/utils.rb +19 -4
- data/lib/ton_sdk_client/version.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6256a1ec816fa6bb0473e20cd8b6d96ff2748c73073e23a1a68da801d57459fe
|
4
|
+
data.tar.gz: 03a2a5a3dc2c0553fa183b8affc1ffa304030967493fa12f4f4efe5d5b7e7752
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f996f811660b6cdfb4ee248c72662729a3cdf681a3552718a73d902c3497176662bb12b2ebd2e547b9d6f6db9c08e38c76ecbe025e386c8425e519597726ea7d
|
7
|
+
data.tar.gz: 9f065d85fe4bd9125a07b0f9ee5a324c9a463d34b1442bc9de722bd452a5dd79055a0b2899d9068998aa691f84dd18327addd1bd353b8c1154abbd9544cc4d14
|
data/CHANGELOG.md
CHANGED
@@ -1,93 +1,37 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
|
4
|
-
-----
|
5
|
-
* the changes are according the ones of TON SDK
|
6
|
-
|
3
|
+
all the changes are always according to the ones of the main TON SDK library; and on top on that, there may be additional ones
|
7
4
|
|
8
|
-
1.
|
5
|
+
1.20.x
|
9
6
|
-----
|
10
|
-
* TON SDK
|
11
|
-
|
7
|
+
* NetworkConfig and AbiContract have been changed (not mentioned explicitly in Changelog of TON SDK )
|
8
|
+
|
12
9
|
|
13
10
|
1.15.x
|
14
11
|
-----
|
15
|
-
* TON SDK version: 1.15.0
|
16
12
|
* internal refactoring
|
17
|
-
|
13
|
+
|
18
14
|
|
19
15
|
1.13.x
|
20
16
|
-----
|
21
|
-
* TON SDK version: 1.13.0
|
22
17
|
* internal refactoring
|
23
|
-
|
18
|
+
|
24
19
|
|
25
20
|
1.12.x
|
26
21
|
-----
|
27
|
-
* TON SDK version: 1.12.0
|
28
22
|
* internal refactoring
|
29
|
-
* the changes are according the ones of TON SDK
|
30
|
-
|
31
|
-
1.11.x
|
32
|
-
-----
|
33
|
-
* TON SDK version: 1.11.0
|
34
|
-
* the changes are according the ones of TON SDK
|
35
|
-
|
36
|
-
|
37
|
-
1.10.x
|
38
|
-
-----
|
39
|
-
* TON SDK version: 1.10.0
|
40
|
-
* the changes are according the ones of TON SDK
|
41
23
|
|
42
24
|
|
43
25
|
1.9.x
|
44
26
|
-----
|
45
|
-
* TON SDK version: 1.9.0
|
46
27
|
* remove TonSdk::NATIVE_LIB_VERSION, rename TonSdk::SDK_VERSION to TonSdk::NATIVE_SDK_VERSION
|
47
|
-
* the changes are according the ones of TON SDK
|
48
|
-
|
49
28
|
|
50
|
-
1.7.x
|
51
|
-
-----
|
52
|
-
* TON SDK version: 1.7.0
|
53
|
-
* the changes are according the ones of TON SDK
|
54
|
-
|
55
|
-
1.3.x
|
56
|
-
-----
|
57
|
-
* TON SDK version: 1.6.0
|
58
|
-
* the changes are according the ones of TON SDK
|
59
29
|
|
60
30
|
1.2.x
|
61
31
|
-----
|
62
|
-
* TON SDK version: 1.5.2
|
63
32
|
* min Ruby version: 3.0
|
64
33
|
|
65
34
|
|
66
|
-
1.1.x
|
67
|
-
-----
|
68
|
-
* new `Client` `.resolve_app_request()`
|
69
|
-
* new `Net` `.query()`, `.suspend()`, `.resume()`
|
70
|
-
* new `Debot`
|
71
|
-
* new `Boc` `.get_boc_hash()`
|
72
|
-
* new `Crypto` `.register_signing_box()`, `.get_signing_box()`, `.signing_box_get_public_key()`,
|
73
|
-
`.signing_box_sign()`, `remove_signing_box()`
|
74
|
-
* new paramentes in `NetworkConfig`; particularly
|
75
|
-
|
76
|
-
```
|
77
|
-
server_address: "example.com"
|
78
|
-
```
|
79
|
-
|
80
|
-
becomes
|
81
|
-
|
82
|
-
```
|
83
|
-
endpoints: ["example.com"]
|
84
|
-
```
|
85
|
-
|
86
|
-
check out the main repository for the details
|
87
|
-
|
88
|
-
* new data types/classes in several modules
|
89
|
-
|
90
|
-
|
91
35
|
1.0.0
|
92
36
|
-----
|
93
|
-
*
|
37
|
+
* the first version has been released.
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# TON SDK client in Ruby and for Ruby
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/ton_sdk_client)
|
4
|
-
[](https://github.com/tonlabs/TON-SDK/tree/1.21.0)
|
5
5
|
|
6
6
|
Ruby gem-client bindings for [TON SDK](https://github.com/tonlabs/TON-SDK) which allows one to communicate with [FreeTON](https://freeton.org) blockchain in Ruby.
|
7
7
|
|
@@ -9,7 +9,7 @@ Note that there're 2 types of versions:
|
|
9
9
|
* `TonSdk::VERSION` - the version of the gem
|
10
10
|
* `TonSdk::NATIVE_SDK_VERSION` - the version of the original SDK
|
11
11
|
|
12
|
-
and they
|
12
|
+
and they may not always match each other.
|
13
13
|
|
14
14
|
|
15
15
|
|
data/lib/ton_sdk_client/abi.rb
CHANGED
@@ -549,43 +549,36 @@ module TonSdk
|
|
549
549
|
end
|
550
550
|
|
551
551
|
class AbiContract
|
552
|
-
attr_reader :abi_version, :header, :functions, :events, :data
|
552
|
+
attr_reader :abi_version, :version, :header, :functions, :events, :data, :fields
|
553
553
|
|
554
|
-
def initialize(
|
554
|
+
def initialize(
|
555
|
+
abi_version: nil,
|
556
|
+
version: nil,
|
557
|
+
header: [],
|
558
|
+
functions: [],
|
559
|
+
events: [],
|
560
|
+
data: [],
|
561
|
+
fields: []
|
562
|
+
)
|
555
563
|
@abi_version = abi_version
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
@
|
561
|
-
@
|
562
|
-
@events = events || []
|
563
|
-
@data = data || []
|
564
|
+
@version = version
|
565
|
+
@header = header
|
566
|
+
@functions = functions
|
567
|
+
@events = events
|
568
|
+
@data = data
|
569
|
+
@fields = fields
|
564
570
|
end
|
565
571
|
|
566
572
|
def to_h
|
567
|
-
@header.compact! if !@header.nil?
|
568
|
-
|
569
|
-
fn_h_s = if !@functions.nil?
|
570
|
-
@functions.compact.map(&:to_h)
|
571
|
-
end
|
572
|
-
|
573
|
-
ev_h_s = if !@events.nil?
|
574
|
-
@events.compact.map(&:to_h)
|
575
|
-
end
|
576
|
-
|
577
|
-
dt_h_s = if !@data.nil?
|
578
|
-
@data.compact.map(&:to_h)
|
579
|
-
end
|
580
|
-
|
581
573
|
{
|
582
574
|
abi_version: @abi_version,
|
583
575
|
:"ABI version" => @abi_version, #TODO
|
584
|
-
|
576
|
+
version: @version,
|
585
577
|
header: @header,
|
586
|
-
functions:
|
587
|
-
events:
|
588
|
-
data:
|
578
|
+
functions: @functions&.map(&:to_h),
|
579
|
+
events: @events&.map(&:to_h),
|
580
|
+
data: @data&.map(&:to_h),
|
581
|
+
fields: @fields&.map(&:to_h)
|
589
582
|
}
|
590
583
|
end
|
591
584
|
|
@@ -610,12 +603,20 @@ module TonSdk
|
|
610
603
|
j["data"].compact.map {|x| AbiData.from_json(x) }
|
611
604
|
end
|
612
605
|
|
606
|
+
fl_s = if j["fields"].nil?
|
607
|
+
[]
|
608
|
+
else
|
609
|
+
j["fields"].compact.map {|x| AbiParam.from_json(x) }
|
610
|
+
end
|
611
|
+
|
613
612
|
self.new(
|
614
613
|
abi_version: j["ABI version"],
|
614
|
+
version: j["version"],
|
615
615
|
header: j["header"],
|
616
616
|
functions: fn_s,
|
617
617
|
events: ev_s,
|
618
|
-
data: dt_s
|
618
|
+
data: dt_s,
|
619
|
+
fields: fl_s
|
619
620
|
)
|
620
621
|
end
|
621
622
|
end
|
@@ -656,6 +657,9 @@ module TonSdk
|
|
656
657
|
end
|
657
658
|
end
|
658
659
|
|
660
|
+
ParamsOfDecodeAccountData = Struct.new(:abi, :data, keyword_init: true)
|
661
|
+
ResultOfDecodeData = Struct.new(:data)
|
662
|
+
|
659
663
|
|
660
664
|
#
|
661
665
|
# functions
|
@@ -772,5 +776,22 @@ module TonSdk
|
|
772
776
|
end
|
773
777
|
end
|
774
778
|
end
|
779
|
+
|
780
|
+
def self.decode_account_data(ctx, params)
|
781
|
+
Interop::request_to_native_lib(ctx, "abi.decode_account_data", params) do |resp|
|
782
|
+
if resp.success?
|
783
|
+
yield NativeLibResponsetResult.new(
|
784
|
+
result: ResultOfDecodeData.new(
|
785
|
+
resp.result["data"]
|
786
|
+
)
|
787
|
+
)
|
788
|
+
else
|
789
|
+
yield resp
|
790
|
+
end
|
791
|
+
end
|
792
|
+
end
|
793
|
+
|
794
|
+
|
795
|
+
|
775
796
|
end
|
776
797
|
end
|
@@ -5,15 +5,16 @@ module TonSdk
|
|
5
5
|
:server_address,
|
6
6
|
:endpoints,
|
7
7
|
:network_retries_count,
|
8
|
+
:max_reconnect_timeout,
|
9
|
+
:reconnect_timeout,
|
8
10
|
:message_retries_count,
|
9
11
|
:message_processing_timeout,
|
10
12
|
:wait_for_timeout,
|
11
13
|
:out_of_sync_threshold,
|
12
|
-
:reconnect_timeout,
|
13
|
-
:max_reconnect_timeout,
|
14
14
|
:sending_endpoint_count,
|
15
15
|
:latency_detection_interval,
|
16
16
|
:max_latency,
|
17
|
+
:query_timeout,
|
17
18
|
:access_key,
|
18
19
|
keyword_init: true
|
19
20
|
) do
|
@@ -30,6 +31,7 @@ module TonSdk
|
|
30
31
|
sending_endpoint_count: 2,
|
31
32
|
latency_detection_interval: 60000,
|
32
33
|
max_latency: 60000,
|
34
|
+
query_timeout: 60000,
|
33
35
|
access_key: nil
|
34
36
|
)
|
35
37
|
super
|
@@ -25,6 +25,13 @@ module TonSdk
|
|
25
25
|
MNEMONICFROMENTROPY_FAILED = 120
|
26
26
|
SIGNING_BOX_NOT_REGISTERED = 121
|
27
27
|
INVALID_SIGNATURE = 122
|
28
|
+
ENCRYPTION_BOX_NOT_REGISTERED = 123
|
29
|
+
INVALID_IV_SIZE = 124
|
30
|
+
UNSUPPORTED_CIPHER_MODE = 125
|
31
|
+
CANNOT_CREATE_CIPHER = 126
|
32
|
+
ENCRYPT_DATA_ERROR = 127
|
33
|
+
DECRYPT_DATA_ERROR = 128
|
34
|
+
IV_REQUIRED = 129
|
28
35
|
end
|
29
36
|
|
30
37
|
ParamsOfFactorize = Struct.new(:composite)
|
@@ -269,6 +276,19 @@ module TonSdk
|
|
269
276
|
ParamsOfEncryptionBoxGetInfo = Struct.new(:encryption_box)
|
270
277
|
ResultOfEncryptionBoxGetInfo = Struct.new(:info)
|
271
278
|
RegisteredEncryptionBox = Struct.new(:handle)
|
279
|
+
ParamsOfCreateEncryptionBox = Struct.new(:algorithm)
|
280
|
+
|
281
|
+
class EncryptionAlgorithm
|
282
|
+
private_class_method :new
|
283
|
+
|
284
|
+
attr_reader :type_, :aes_params
|
285
|
+
|
286
|
+
def self.new_with_type_aes(aes_params:)
|
287
|
+
@type_ = :aes
|
288
|
+
@aes_params = aes_params
|
289
|
+
end
|
290
|
+
end
|
291
|
+
|
272
292
|
|
273
293
|
|
274
294
|
#
|
@@ -819,5 +839,17 @@ module TonSdk
|
|
819
839
|
end
|
820
840
|
end
|
821
841
|
end
|
842
|
+
|
843
|
+
def self.create_encryption_box(ctx, params)
|
844
|
+
Interop::request_to_native_lib(ctx, "crypto.create_encryption_box", params) do |resp|
|
845
|
+
if resp.success?
|
846
|
+
yield NativeLibResponsetResult.new(
|
847
|
+
result: RegisteredEncryptionBox.new(resp.result["handle"])
|
848
|
+
)
|
849
|
+
else
|
850
|
+
yield resp
|
851
|
+
end
|
852
|
+
end
|
853
|
+
end
|
822
854
|
end
|
823
855
|
end
|
data/lib/ton_sdk_client/net.rb
CHANGED
@@ -228,9 +228,28 @@ module TonSdk
|
|
228
228
|
h
|
229
229
|
end
|
230
230
|
end
|
231
|
-
|
232
231
|
ResultOfQueryTransactionTree = Struct.new(:messages, :transactions, keyword_init: true)
|
233
232
|
|
233
|
+
ParamsOfCreateBlockIterator = Struct.new(:start_time, :end_time, :shard_filter, :result, keyword_init: true)
|
234
|
+
RegisteredIterator = Struct.new(:handle)
|
235
|
+
ParamsOfResumeBlockIterator = Struct.new(:resume_state)
|
236
|
+
ParamsOfCreateTransactionIterator = Struct.new(:start_time, :end_time, :shard_filter, :accounts_filter, :result, :include_transfers, keyword_init: true)
|
237
|
+
ParamsOfResumeTransactionIterator = Struct.new(:resume_state, :accounts_filter, keyword_init: true) do
|
238
|
+
def initialize(resume_state:, accounts_filter: nil)
|
239
|
+
super
|
240
|
+
end
|
241
|
+
end
|
242
|
+
ParamsOfIteratorNext = Struct.new(:iterator, :limit, :return_resume_state, keyword_init: true) do
|
243
|
+
def initialize(iterator:, limit: nil, return_resume_state: nil)
|
244
|
+
super
|
245
|
+
end
|
246
|
+
end
|
247
|
+
ResultOfIteratorNext = Struct.new(:items, :has_more, :resume_state, keyword_init: true) do
|
248
|
+
def initialize(items: [], has_more:, resume_state: nil)
|
249
|
+
super
|
250
|
+
end
|
251
|
+
end
|
252
|
+
|
234
253
|
|
235
254
|
#
|
236
255
|
# functions
|
@@ -367,71 +386,148 @@ module TonSdk
|
|
367
386
|
end
|
368
387
|
end
|
369
388
|
end
|
370
|
-
end
|
371
389
|
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
390
|
+
def self.batch_query(ctx, params)
|
391
|
+
Interop::request_to_native_lib(ctx, "net.batch_query", params) do |resp|
|
392
|
+
if resp.success?
|
393
|
+
yield NativeLibResponsetResult.new(
|
394
|
+
result: ResultOfBatchQuery.new(resp.result["results"])
|
395
|
+
)
|
396
|
+
else
|
397
|
+
yield resp
|
398
|
+
end
|
380
399
|
end
|
381
400
|
end
|
382
|
-
end
|
383
401
|
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
402
|
+
def self.aggregate_collection(ctx, params)
|
403
|
+
Interop::request_to_native_lib(ctx, "net.aggregate_collection", params) do |resp|
|
404
|
+
if resp.success?
|
405
|
+
yield NativeLibResponsetResult.new(
|
406
|
+
result: ResultOfAggregateCollection.new(resp.result["values"])
|
407
|
+
)
|
408
|
+
else
|
409
|
+
yield resp
|
410
|
+
end
|
392
411
|
end
|
393
412
|
end
|
394
|
-
end
|
395
413
|
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
414
|
+
def self.get_endpoints(ctx, params)
|
415
|
+
Interop::request_to_native_lib(ctx, "net.get_endpoints", params) do |resp|
|
416
|
+
if resp.success?
|
417
|
+
yield NativeLibResponsetResult.new(
|
418
|
+
result: ResultOfGetEndpoints.new(
|
419
|
+
query: resp.result["query"],
|
420
|
+
endpoints: resp.result["endpoints"],
|
421
|
+
)
|
403
422
|
)
|
404
|
-
|
405
|
-
|
406
|
-
|
423
|
+
else
|
424
|
+
yield resp
|
425
|
+
end
|
407
426
|
end
|
408
427
|
end
|
409
|
-
end
|
410
428
|
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
429
|
+
def self.query_counterparties(ctx, params)
|
430
|
+
Interop::request_to_native_lib(ctx, "net.query_counterparties", params) do |resp|
|
431
|
+
if resp.success?
|
432
|
+
yield NativeLibResponsetResult.new(
|
433
|
+
result: ResultOfQueryCollection.new(resp.result["result"])
|
434
|
+
)
|
435
|
+
else
|
436
|
+
yield resp
|
437
|
+
end
|
419
438
|
end
|
420
439
|
end
|
421
|
-
end
|
422
440
|
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
441
|
+
def self.query_transaction_tree(ctx, params)
|
442
|
+
Interop::request_to_native_lib(ctx, "net.query_transaction_tree", params) do |resp|
|
443
|
+
if resp.success?
|
444
|
+
yield NativeLibResponsetResult.new(
|
445
|
+
result: ResultOfQueryTransactionTree.new(
|
446
|
+
messages: resp.result["messages"],
|
447
|
+
transactions: resp.result["transactions"],
|
448
|
+
)
|
430
449
|
)
|
431
|
-
|
432
|
-
|
433
|
-
|
450
|
+
else
|
451
|
+
yield resp
|
452
|
+
end
|
434
453
|
end
|
435
454
|
end
|
455
|
+
|
456
|
+
def self.create_block_iterator(ctx, params)
|
457
|
+
Interop::request_to_native_lib(ctx, "net.create_block_iterator", params) do |resp|
|
458
|
+
if resp.success?
|
459
|
+
yield NativeLibResponsetResult.new(
|
460
|
+
result: RegisteredIterator.new(resp.result["handle"])
|
461
|
+
)
|
462
|
+
else
|
463
|
+
yield resp
|
464
|
+
end
|
465
|
+
end
|
466
|
+
end
|
467
|
+
|
468
|
+
def self.resume_block_iterator(ctx, params)
|
469
|
+
Interop::request_to_native_lib(ctx, "net.resume_block_iterator", params) do |resp|
|
470
|
+
if resp.success?
|
471
|
+
yield NativeLibResponsetResult.new(
|
472
|
+
result: RegisteredIterator.new(resp.result["handle"])
|
473
|
+
)
|
474
|
+
else
|
475
|
+
yield resp
|
476
|
+
end
|
477
|
+
end
|
478
|
+
end
|
479
|
+
|
480
|
+
def self.create_transaction_iterator(ctx, params)
|
481
|
+
Interop::request_to_native_lib(ctx, "net.create_transaction_iterator", params) do |resp|
|
482
|
+
if resp.success?
|
483
|
+
yield NativeLibResponsetResult.new(
|
484
|
+
result: RegisteredIterator.new(resp.result["handle"])
|
485
|
+
)
|
486
|
+
else
|
487
|
+
yield resp
|
488
|
+
end
|
489
|
+
end
|
490
|
+
end
|
491
|
+
|
492
|
+
def self.resume_transaction_iterator(ctx, params)
|
493
|
+
Interop::request_to_native_lib(ctx, "net.resume_transaction_iterator", params) do |resp|
|
494
|
+
if resp.success?
|
495
|
+
yield NativeLibResponsetResult.new(
|
496
|
+
result: RegisteredIterator.new(resp.result["handle"])
|
497
|
+
)
|
498
|
+
else
|
499
|
+
yield resp
|
500
|
+
end
|
501
|
+
end
|
502
|
+
end
|
503
|
+
|
504
|
+
def self.iterator_next(ctx, params)
|
505
|
+
Interop::request_to_native_lib(ctx, "net.iterator_next", params) do |resp|
|
506
|
+
if resp.success?
|
507
|
+
yield NativeLibResponsetResult.new(
|
508
|
+
result: ResultOfIteratorNext.new(
|
509
|
+
items: resp.result["items"],
|
510
|
+
has_more: resp.result["has_more"],
|
511
|
+
resume_state: resp.result["resume_state"]
|
512
|
+
)
|
513
|
+
)
|
514
|
+
else
|
515
|
+
yield resp
|
516
|
+
end
|
517
|
+
end
|
518
|
+
end
|
519
|
+
|
520
|
+
def self.remove_iterator(ctx, params)
|
521
|
+
Interop::request_to_native_lib(ctx, "net.remove_iterator", params) do |resp|
|
522
|
+
if resp.success?
|
523
|
+
yield NativeLibResponsetResult.new(
|
524
|
+
result: nil
|
525
|
+
)
|
526
|
+
else
|
527
|
+
yield resp
|
528
|
+
end
|
529
|
+
end
|
530
|
+
end
|
531
|
+
|
436
532
|
end
|
437
533
|
end
|
data/lib/ton_sdk_client/utils.rb
CHANGED
@@ -51,6 +51,9 @@ module TonSdk
|
|
51
51
|
ParamsOfDecompressZstd = Struct.new(:compressed)
|
52
52
|
ResultOfDecompressZstd = Struct.new(:decompressed)
|
53
53
|
|
54
|
+
ParamsOfGetAddressType = Struct.new(:address)
|
55
|
+
ResultOfGetAddressType = Struct.new(:address_type)
|
56
|
+
|
54
57
|
|
55
58
|
#
|
56
59
|
# functions
|
@@ -60,7 +63,7 @@ module TonSdk
|
|
60
63
|
Interop::request_to_native_lib(ctx, "utils.convert_address", params) do |resp|
|
61
64
|
if resp.success?
|
62
65
|
yield NativeLibResponsetResult.new(
|
63
|
-
result:
|
66
|
+
result: ResultOfConvertAddress.new(resp.result["address"])
|
64
67
|
)
|
65
68
|
else
|
66
69
|
yield resp
|
@@ -72,7 +75,7 @@ module TonSdk
|
|
72
75
|
Interop::request_to_native_lib(ctx, "utils.calc_storage_fee", params) do |resp|
|
73
76
|
if resp.success?
|
74
77
|
yield NativeLibResponsetResult.new(
|
75
|
-
result:
|
78
|
+
result: ResultOfCalcStorageFee.new(resp.result["fee"])
|
76
79
|
)
|
77
80
|
else
|
78
81
|
yield resp
|
@@ -84,7 +87,7 @@ module TonSdk
|
|
84
87
|
Interop::request_to_native_lib(ctx, "utils.compress_zstd", params) do |resp|
|
85
88
|
if resp.success?
|
86
89
|
yield NativeLibResponsetResult.new(
|
87
|
-
result:
|
90
|
+
result: ResultOfCompressZstd.new(resp.result["compressed"])
|
88
91
|
)
|
89
92
|
else
|
90
93
|
yield resp
|
@@ -96,7 +99,19 @@ module TonSdk
|
|
96
99
|
Interop::request_to_native_lib(ctx, "utils.decompress_zstd", params) do |resp|
|
97
100
|
if resp.success?
|
98
101
|
yield NativeLibResponsetResult.new(
|
99
|
-
result:
|
102
|
+
result: ParamsOfDecompressZstd.new(resp.result["decompressed"])
|
103
|
+
)
|
104
|
+
else
|
105
|
+
yield resp
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
def self.get_address_type(ctx, params)
|
111
|
+
Interop::request_to_native_lib(ctx, "utils.get_address_type", params) do |resp|
|
112
|
+
if resp.success?
|
113
|
+
yield NativeLibResponsetResult.new(
|
114
|
+
result: ResultOfGetAddressType.new(resp.result["address_type"])
|
100
115
|
)
|
101
116
|
else
|
102
117
|
yield resp
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ton_sdk_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Maslakov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|