blockapi 2.5.7__tar.gz → 2.7.0__tar.gz

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.
Files changed (114) hide show
  1. {blockapi-2.5.7 → blockapi-2.7.0}/PKG-INFO +1 -1
  2. blockapi-2.7.0/blockapi/test/v2/api/test_bitaps_ltc.py +39 -0
  3. blockapi-2.7.0/blockapi/test/v2/api/test_litecoinspace.py +46 -0
  4. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/__init__.py +2 -0
  5. blockapi-2.7.0/blockapi/v2/api/bitaps.py +53 -0
  6. blockapi-2.7.0/blockapi/v2/api/litecoinspace.py +55 -0
  7. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/blockchain_mapping.py +1 -0
  8. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/models.py +1 -0
  9. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi.egg-info/PKG-INFO +1 -1
  10. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi.egg-info/SOURCES.txt +4 -0
  11. {blockapi-2.5.7 → blockapi-2.7.0}/setup.py +1 -1
  12. {blockapi-2.5.7 → blockapi-2.7.0}/LICENSE.md +0 -0
  13. {blockapi-2.5.7 → blockapi-2.7.0}/README.md +0 -0
  14. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/__init__.py +0 -0
  15. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/services.py +0 -0
  16. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/__init__.py +0 -0
  17. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/test_blockapi.py +0 -0
  18. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/test_num.py +0 -0
  19. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/test_random_user_agent.py +0 -0
  20. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/__init__.py +0 -0
  21. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/__init__.py +0 -0
  22. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/conftest.py +0 -0
  23. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/covalenth/__init__.py +0 -0
  24. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/covalenth/test_ethereum.py +0 -0
  25. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/fake_sleep_provider.py +0 -0
  26. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/nft/__init__.py +0 -0
  27. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/nft/test_magic_eden.py +0 -0
  28. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/nft/test_opensea.py +0 -0
  29. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/nft/test_simple_hash.py +0 -0
  30. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/nft/test_unisat.py +0 -0
  31. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/perpetual/__init__.py +0 -0
  32. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/perpetual/test_perpetual.py +0 -0
  33. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/synthetix/__init__.py +0 -0
  34. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/synthetix/test_synthetix.py +0 -0
  35. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_blockchain_info.py +0 -0
  36. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_blockchainos.py +0 -0
  37. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_blockchair_btc.py +0 -0
  38. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_blockchair_doge.py +0 -0
  39. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_blockchair_ltc.py +0 -0
  40. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_cosmos.py +0 -0
  41. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_ethplorer.py +0 -0
  42. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_haskoin.py +0 -0
  43. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_multisources.py +0 -0
  44. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_optimistic_etherscan.py +0 -0
  45. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_solana.py +0 -0
  46. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_subscan_polkadot.py +0 -0
  47. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_sui.py +0 -0
  48. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_terra.py +0 -0
  49. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_trezor_btc.py +0 -0
  50. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/api/test_trezor_zec.py +0 -0
  51. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_base.py +0 -0
  52. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_blockchain_api.py +0 -0
  53. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_blockchain_mapping.py +0 -0
  54. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_data.py +0 -0
  55. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_enumerate_classes.py +0 -0
  56. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_generic.py +0 -0
  57. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test/v2/test_models.py +0 -0
  58. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/test_data.py +0 -0
  59. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/utils/__init__.py +0 -0
  60. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/utils/address.py +0 -0
  61. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/utils/datetime.py +0 -0
  62. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/utils/num.py +0 -0
  63. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/utils/user_agent.py +0 -0
  64. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/__init__.py +0 -0
  65. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/blockchain_info.py +0 -0
  66. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/blockchainos.py +0 -0
  67. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/blockchair.py +0 -0
  68. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/cosmos.py +0 -0
  69. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/__init__.py +0 -0
  70. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/arbitrum.py +0 -0
  71. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/astar.py +0 -0
  72. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/avalanche.py +0 -0
  73. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/axie.py +0 -0
  74. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/base.py +0 -0
  75. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/binance_smart_chain.py +0 -0
  76. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/ethereum.py +0 -0
  77. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/fantom.py +0 -0
  78. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/heco.py +0 -0
  79. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/iotex.py +0 -0
  80. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/klaytn.py +0 -0
  81. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/moonbeam.py +0 -0
  82. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/palm.py +0 -0
  83. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/polygon.py +0 -0
  84. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/covalenth/rsk.py +0 -0
  85. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/debank.py +0 -0
  86. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/debank_maps.py +0 -0
  87. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/ethplorer.py +0 -0
  88. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/haskoin.py +0 -0
  89. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/nft/__init__.py +0 -0
  90. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/nft/magic_eden.py +0 -0
  91. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/nft/opensea.py +0 -0
  92. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/nft/simple_hash.py +0 -0
  93. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/nft/unisat.py +0 -0
  94. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/optimistic_etherscan.py +0 -0
  95. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/perpetual/__init__.py +0 -0
  96. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/perpetual/perp_abi.py +0 -0
  97. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/perpetual/perpetual.py +0 -0
  98. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/solana.py +0 -0
  99. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/subscan.py +0 -0
  100. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/sui.py +0 -0
  101. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/synthetix/__init__.py +0 -0
  102. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/synthetix/synthetix.py +0 -0
  103. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/synthetix/synthetix_abi.py +0 -0
  104. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/terra.py +0 -0
  105. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/trezor.py +0 -0
  106. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/api/web3_utils.py +0 -0
  107. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/base.py +0 -0
  108. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/coin_mapping.py +0 -0
  109. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi/v2/coins.py +0 -0
  110. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi.egg-info/dependency_links.txt +0 -0
  111. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi.egg-info/requires.txt +0 -0
  112. {blockapi-2.5.7 → blockapi-2.7.0}/blockapi.egg-info/top_level.txt +0 -0
  113. {blockapi-2.5.7 → blockapi-2.7.0}/pyproject.toml +0 -0
  114. {blockapi-2.5.7 → blockapi-2.7.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blockapi
3
- Version: 2.5.7
3
+ Version: 2.7.0
4
4
  Summary: BlockAPI library
5
5
  Home-page: https://github.com/crypkit/blockapi
6
6
  Author: Devmons s.r.o.
@@ -0,0 +1,39 @@
1
+ from decimal import Decimal
2
+
3
+ import pytest
4
+
5
+ from blockapi.test.v2.api.conftest import read_file
6
+ from blockapi.test.v2.test_data import ltc_test_address
7
+ from blockapi.v2.api.bitaps import BitapsLitecoinApi
8
+ from blockapi.v2.models import FetchResult
9
+
10
+
11
+ def test_fetch_balances(requests_mock, bitaps_ltc_balance_response):
12
+ requests_mock.get(
13
+ f'https://api.bitaps.com/ltc/v1/blockchain/address/state/{ltc_test_address}',
14
+ text=bitaps_ltc_balance_response,
15
+ )
16
+
17
+ api = BitapsLitecoinApi()
18
+ balances = api.get_balance(ltc_test_address)
19
+ assert len(balances) == 1
20
+ assert balances[0].balance == Decimal('0.00075763')
21
+
22
+
23
+ def test_parse_zero_balance():
24
+ api = BitapsLitecoinApi()
25
+ fetch_result = FetchResult(data={'data': {'balance': 0}})
26
+ result = api.parse_balances(fetch_result)
27
+ assert result.data is None
28
+
29
+
30
+ def test_parse_empty_response():
31
+ api = BitapsLitecoinApi()
32
+ fetch_result = FetchResult(data=None)
33
+ result = api.parse_balances(fetch_result)
34
+ assert result.data is None
35
+
36
+
37
+ @pytest.fixture
38
+ def bitaps_ltc_balance_response():
39
+ return read_file('data/bitaps_ltc_balance_response.json')
@@ -0,0 +1,46 @@
1
+ from decimal import Decimal
2
+
3
+ import pytest
4
+
5
+ from blockapi.test.v2.api.conftest import read_file
6
+ from blockapi.test.v2.test_data import ltc_test_address
7
+ from blockapi.v2.api.litecoinspace import LitecoinSpaceApi
8
+ from blockapi.v2.models import FetchResult
9
+
10
+
11
+ def test_fetch_balances(requests_mock, litecoinspace_balance_response):
12
+ requests_mock.get(
13
+ f'https://litecoinspace.org/api/address/{ltc_test_address}',
14
+ text=litecoinspace_balance_response,
15
+ )
16
+
17
+ api = LitecoinSpaceApi()
18
+ balances = api.get_balance(ltc_test_address)
19
+ assert len(balances) == 1
20
+ assert balances[0].balance == Decimal('0.00075763')
21
+
22
+
23
+ def test_parse_zero_balance():
24
+ api = LitecoinSpaceApi()
25
+ fetch_result = FetchResult(
26
+ data={
27
+ 'chain_stats': {
28
+ 'funded_txo_sum': 100,
29
+ 'spent_txo_sum': 100,
30
+ }
31
+ }
32
+ )
33
+ result = api.parse_balances(fetch_result)
34
+ assert result.data is None
35
+
36
+
37
+ def test_parse_empty_response():
38
+ api = LitecoinSpaceApi()
39
+ fetch_result = FetchResult(data=None)
40
+ result = api.parse_balances(fetch_result)
41
+ assert result.data is None
42
+
43
+
44
+ @pytest.fixture
45
+ def litecoinspace_balance_response():
46
+ return read_file('data/litecoinspace_balance_response.json')
@@ -1,3 +1,4 @@
1
+ from blockapi.v2.api.bitaps import BitapsLitecoinApi
1
2
  from blockapi.v2.api.blockchain_info import BlockchainInfoApi
2
3
  from blockapi.v2.api.blockchainos import BlockchainosApi
3
4
  from blockapi.v2.api.blockchair import (
@@ -9,6 +10,7 @@ from blockapi.v2.api.blockchair import (
9
10
  from blockapi.v2.api.debank import DebankApi, DebankApp, DebankPrediction
10
11
  from blockapi.v2.api.ethplorer import EthplorerApi
11
12
  from blockapi.v2.api.haskoin import HaskoinApi
13
+ from blockapi.v2.api.litecoinspace import LitecoinSpaceApi
12
14
  from blockapi.v2.api.optimistic_etherscan import OptimismEtherscanApi
13
15
  from blockapi.v2.api.perpetual import PerpetualApi, perp_contract_address
14
16
  from blockapi.v2.api.solana import SolanaApi, SolscanApi
@@ -0,0 +1,53 @@
1
+ from blockapi.v2.base import BalanceMixin, BlockchainApi
2
+ from blockapi.v2.coins import COIN_LTC
3
+ from blockapi.v2.models import (
4
+ ApiOptions,
5
+ AssetType,
6
+ BalanceItem,
7
+ Blockchain,
8
+ FetchResult,
9
+ ParseResult,
10
+ )
11
+
12
+
13
+ class BitapsLitecoinApi(BlockchainApi, BalanceMixin):
14
+ """
15
+ Coin: Litecoin
16
+ API docs: https://developer.bitaps.com/
17
+ Explorer: https://ltc.bitaps.com
18
+ """
19
+
20
+ coin = COIN_LTC
21
+ api_options = ApiOptions(
22
+ blockchain=Blockchain.LITECOIN,
23
+ base_url='https://api.bitaps.com/ltc/v1/',
24
+ rate_limit=0.1,
25
+ )
26
+
27
+ supported_requests = {
28
+ 'get_balance': 'blockchain/address/state/{address}',
29
+ }
30
+
31
+ def fetch_balances(self, address: str) -> FetchResult:
32
+ return self.get_data('get_balance', address=address)
33
+
34
+ def parse_balances(self, fetch_result: FetchResult) -> ParseResult:
35
+ if not fetch_result.data:
36
+ return ParseResult()
37
+
38
+ data = fetch_result.data.get('data', {})
39
+ balance_raw = data.get('balance')
40
+
41
+ if not balance_raw:
42
+ return ParseResult()
43
+
44
+ return ParseResult(
45
+ data=[
46
+ BalanceItem.from_api(
47
+ balance_raw=balance_raw,
48
+ coin=self.coin,
49
+ asset_type=AssetType.AVAILABLE,
50
+ raw=fetch_result.data,
51
+ )
52
+ ]
53
+ )
@@ -0,0 +1,55 @@
1
+ from blockapi.v2.base import BalanceMixin, BlockchainApi
2
+ from blockapi.v2.coins import COIN_LTC
3
+ from blockapi.v2.models import (
4
+ ApiOptions,
5
+ AssetType,
6
+ BalanceItem,
7
+ Blockchain,
8
+ FetchResult,
9
+ ParseResult,
10
+ )
11
+
12
+
13
+ class LitecoinSpaceApi(BlockchainApi, BalanceMixin):
14
+ """
15
+ Coin: Litecoin
16
+ API docs: https://litecoinspace.org/docs/api/rest
17
+ Explorer: https://litecoinspace.org
18
+ """
19
+
20
+ coin = COIN_LTC
21
+ api_options = ApiOptions(
22
+ blockchain=Blockchain.LITECOIN,
23
+ base_url='https://litecoinspace.org',
24
+ rate_limit=0.2,
25
+ )
26
+
27
+ supported_requests = {
28
+ 'get_balance': '/api/address/{address}',
29
+ }
30
+
31
+ def fetch_balances(self, address: str) -> FetchResult:
32
+ return self.get_data('get_balance', address=address)
33
+
34
+ def parse_balances(self, fetch_result: FetchResult) -> ParseResult:
35
+ if not fetch_result.data:
36
+ return ParseResult()
37
+
38
+ chain_stats = fetch_result.data.get('chain_stats', {})
39
+ funded = chain_stats.get('funded_txo_sum', 0)
40
+ spent = chain_stats.get('spent_txo_sum', 0)
41
+ balance_raw = funded - spent
42
+
43
+ if not balance_raw:
44
+ return ParseResult()
45
+
46
+ return ParseResult(
47
+ data=[
48
+ BalanceItem.from_api(
49
+ balance_raw=balance_raw,
50
+ coin=self.coin,
51
+ asset_type=AssetType.AVAILABLE,
52
+ raw=fetch_result.data,
53
+ )
54
+ ]
55
+ )
@@ -203,6 +203,7 @@ CHAIN_ID_BLOCKCHAINS_MAP = {
203
203
  '2222': Blockchain.KAVA,
204
204
  '2741': Blockchain.ABSTRACT,
205
205
  '4689': Blockchain.IOTEX,
206
+ '6342': Blockchain.MEGAETH,
206
207
  '8217': Blockchain.KLAYTN_CYPRESS,
207
208
  '9001': Blockchain.EVMOS,
208
209
  # "16350": None, #TODO: Not found
@@ -215,6 +215,7 @@ class Blockchain(str, Enum):
215
215
  MANTLE = 'mantle'
216
216
  MAP_PROTOCOL = 'map-protocol'
217
217
  MASSA = 'massa'
218
+ MEGAETH = 'megaeth'
218
219
  MELD = 'meld'
219
220
  MERLIN_CHAIN = 'merlin-chain'
220
221
  METAL_L2 = 'metal-l2'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blockapi
3
- Version: 2.5.7
3
+ Version: 2.7.0
4
4
  Summary: BlockAPI library
5
5
  Home-page: https://github.com/crypkit/blockapi
6
6
  Author: Devmons s.r.o.
@@ -26,6 +26,7 @@ blockapi/test/v2/test_models.py
26
26
  blockapi/test/v2/api/__init__.py
27
27
  blockapi/test/v2/api/conftest.py
28
28
  blockapi/test/v2/api/fake_sleep_provider.py
29
+ blockapi/test/v2/api/test_bitaps_ltc.py
29
30
  blockapi/test/v2/api/test_blockchain_info.py
30
31
  blockapi/test/v2/api/test_blockchainos.py
31
32
  blockapi/test/v2/api/test_blockchair_btc.py
@@ -34,6 +35,7 @@ blockapi/test/v2/api/test_blockchair_ltc.py
34
35
  blockapi/test/v2/api/test_cosmos.py
35
36
  blockapi/test/v2/api/test_ethplorer.py
36
37
  blockapi/test/v2/api/test_haskoin.py
38
+ blockapi/test/v2/api/test_litecoinspace.py
37
39
  blockapi/test/v2/api/test_multisources.py
38
40
  blockapi/test/v2/api/test_optimistic_etherscan.py
39
41
  blockapi/test/v2/api/test_solana.py
@@ -65,6 +67,7 @@ blockapi/v2/coin_mapping.py
65
67
  blockapi/v2/coins.py
66
68
  blockapi/v2/models.py
67
69
  blockapi/v2/api/__init__.py
70
+ blockapi/v2/api/bitaps.py
68
71
  blockapi/v2/api/blockchain_info.py
69
72
  blockapi/v2/api/blockchainos.py
70
73
  blockapi/v2/api/blockchair.py
@@ -73,6 +76,7 @@ blockapi/v2/api/debank.py
73
76
  blockapi/v2/api/debank_maps.py
74
77
  blockapi/v2/api/ethplorer.py
75
78
  blockapi/v2/api/haskoin.py
79
+ blockapi/v2/api/litecoinspace.py
76
80
  blockapi/v2/api/optimistic_etherscan.py
77
81
  blockapi/v2/api/solana.py
78
82
  blockapi/v2/api/subscan.py
@@ -6,7 +6,7 @@ with open("README.md", "r") as f:
6
6
 
7
7
  PACKAGES = find_packages(where='.')
8
8
 
9
- __version__ = "2.5.7"
9
+ __version__ = "2.7.0"
10
10
 
11
11
  setuptools.setup(
12
12
  name='blockapi',
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes