shadowPaySDK 0.2.0.7__tar.gz → 0.2.0.9__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 (22) hide show
  1. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/PKG-INFO +1 -1
  2. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/setup.py +1 -1
  3. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/interface/sol.py +29 -27
  4. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/types/SOLcheque.py +3 -4
  5. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK.egg-info/PKG-INFO +1 -1
  6. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/LICENSE +0 -0
  7. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/README.md +0 -0
  8. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/setup.cfg +0 -0
  9. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/__init__.py +0 -0
  10. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/api.py +0 -0
  11. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/const.py +0 -0
  12. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/interface/__init__.py +0 -0
  13. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/interface/erc20.py +0 -0
  14. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/interface/erc721.py +0 -0
  15. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/types/EVMcheque.py +0 -0
  16. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/types/__init__.py +0 -0
  17. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/utils/__init__.py +0 -0
  18. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK/utils/utils.py +0 -0
  19. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK.egg-info/SOURCES.txt +0 -0
  20. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK.egg-info/dependency_links.txt +0 -0
  21. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK.egg-info/requires.txt +0 -0
  22. {shadowpaysdk-0.2.0.7 → shadowpaysdk-0.2.0.9}/shadowPaySDK.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: shadowPaySDK
3
- Version: 0.2.0.7
3
+ Version: 0.2.0.9
4
4
  Summary: ShadowPay SDK for ERC20/ERC721 and P2P smart contract interaction
5
5
  Author: dazarius_
6
6
  Author-email: your@email.com
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='shadowPaySDK',
5
- version='0.2.0.7',
5
+ version='0.2.0.9',
6
6
  description='ShadowPay SDK for ERC20/ERC721 and P2P smart contract interaction',
7
7
  long_description=open('README.md').read(),
8
8
  long_description_content_type='text/markdown',
@@ -1,18 +1,19 @@
1
1
  import asyncio
2
2
  from solana.rpc.async_api import AsyncClient, GetTokenAccountsByOwnerResp
3
+ from solana.transaction import Transaction
4
+ from solders.system_program import TransferParams as p
3
5
  import spl
4
6
  import spl.token
5
7
  import spl.token.constants
6
- from spl.token.instructions import get_associated_token_address, create_associated_token_account, transfer, close_account
8
+ from spl.token.instructions import get_associated_token_address, create_associated_token_account, transfer, close_account, TransferParams
7
9
  from spl.token.constants import TOKEN_PROGRAM_ID, ASSOCIATED_TOKEN_PROGRAM_ID
8
- from solana.constants import *
9
10
  from solana.rpc.types import TxOpts, TokenAccountOpts
10
11
  from solana.rpc.types import TxOpts
11
12
  import solders
12
- from solders.pubkey import Pubkey
13
- from solders.keypair import Keypair
14
- from solders.signature import Signature
15
- from solders.transaction import Transaction
13
+ # from solders.pubkey import Pubkey
14
+ # from solders.keypair import Keypair
15
+ # from solders.signature import Signature
16
+ # from solders.transaction import Transaction
16
17
  from spl.token.async_client import AsyncToken
17
18
 
18
19
 
@@ -27,9 +28,11 @@ import base64
27
28
  import re
28
29
 
29
30
 
31
+ LAMPORTS_PER_SOL = 1_000_000_000 # 1 SOL = 1,000,000,000 lamports
32
+
30
33
  class SOL:
31
34
 
32
- def __init__(self, rpc_url = "https://api.mainnet-beta.solana.com", KEYPAIR: Optional[Union[str, Keypair]] = None,TOKEN_MINT: Optional[str] = None):
35
+ def __init__(self, rpc_url = "https://api.mainnet-beta.solana.com", KEYPAIR: Optional[Union[str, solders.keypair.Keypair]] = None,TOKEN_MINT: Optional[str] = None):
33
36
  self.rpc_url = rpc_url
34
37
  self.client = AsyncClient(rpc_url)
35
38
  self.KEYPAIR = None
@@ -39,18 +42,18 @@ class SOL:
39
42
  if KEYPAIR:
40
43
  self.set_keypair(KEYPAIR)
41
44
 
42
- def set_keypair(self, KEYPAIR: Union[str, Keypair]):
45
+ def set_keypair(self, KEYPAIR: Union[str, solders.keypair.Keypair]):
43
46
  if isinstance(KEYPAIR, str):
44
47
  try:
45
- self.KEYPAIR = Keypair.from_base58_string(KEYPAIR)
48
+ self.KEYPAIR = solders.keypair.Keypair.from_base58_string(KEYPAIR)
46
49
  except Exception as e:
47
50
  raise ValueError(f"Invalid Keypair string: {e}")
48
- elif isinstance(KEYPAIR, Keypair):
51
+ elif isinstance(KEYPAIR, solders.keypair.Keypair):
49
52
  self.KEYPAIR = KEYPAIR
50
53
  else:
51
54
  raise ValueError("KEYPAIR must be a Keypair instance or a base58 encoded string.")
52
55
 
53
- def set_params(self, rpc_url: Optional[str] = None, KEYPAIR: Optional[Union[str, Keypair]] = None,TOKEN_MINT: Optional[str] = None):
56
+ def set_params(self, rpc_url: Optional[str] = None, KEYPAIR: Optional[Union[str, solders.keypair.Keypair]] = None,TOKEN_MINT: Optional[str] = None):
54
57
  if rpc_url:
55
58
  self.rpc_url = rpc_url
56
59
  self.client = AsyncClient(rpc_url)
@@ -72,7 +75,7 @@ class SOL:
72
75
  raise ValueError("Keypair not set")
73
76
 
74
77
  def gen_wallet(self):
75
- return Keypair()
78
+ return solders.keypair.Keypair()
76
79
  async def get_balance(self):
77
80
  resp = await self.client.get_balance(self.get_pubkey())
78
81
  lamports = resp.value
@@ -117,14 +120,14 @@ class SOL:
117
120
  await self.client.close()
118
121
 
119
122
  async def fetch_metadata_raw(self,mint_address: str):
120
- METADATA_PROGRAM_ID = Pubkey.from_string("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s")
121
- mint = Pubkey.from_string(mint_address)
123
+ METADATA_PROGRAM_ID = solders.pubkey.Pubkey.from_string("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s")
124
+ mint = solders.pubkey.Pubkey.from_string(mint_address)
122
125
  seeds = [
123
126
  b"metadata",
124
127
  bytes(METADATA_PROGRAM_ID),
125
128
  bytes(mint),
126
129
  ]
127
- pda, _ = Pubkey.find_program_address(seeds, METADATA_PROGRAM_ID)
130
+ pda, _ = solders.pubkey.Pubkey.find_program_address(seeds, METADATA_PROGRAM_ID)
128
131
 
129
132
  payload = {
130
133
  "jsonrpc": "2.0",
@@ -162,8 +165,8 @@ class SOL:
162
165
  raise ValueError("not set KEYPAIR.")
163
166
 
164
167
  sender_pubkey = self.get_pubkey()
165
- receiver_pubkey = Pubkey.from_string(to)
166
- token_pubkey = Pubkey.from_string(self.TOKEN_MINT)
168
+ receiver_pubkey = solders.pubkey.Pubkey.from_string(to)
169
+ token_pubkey = solders.pubkey.Pubkey.from_string(self.TOKEN_MINT)
167
170
 
168
171
  token = AsyncToken(self.client, token_pubkey, TOKEN_PROGRAM_ID, self.KEYPAIR)
169
172
  sender_ata = get_associated_token_address(sender_pubkey, token_pubkey)
@@ -183,17 +186,16 @@ class SOL:
183
186
 
184
187
  decimals = (await token.get_mint_info()).decimals
185
188
  real_amount = int(amount * (10 ** decimals))
186
-
187
- tx.add(
188
- transfer(
189
- source=sender_ata,
190
- dest=receiver_ata,
191
- owner=sender_pubkey,
192
- amount=real_amount,
193
- program_id=TOKEN_PROGRAM_ID,
194
- )
189
+ params = TransferParams(
190
+ program_id=TOKEN_PROGRAM_ID,
191
+ source=sender_ata,
192
+ dest=receiver_ata,
193
+ owner=sender_pubkey,
194
+ amount=real_amount
195
195
  )
196
196
 
197
+ tx.add(transfer(params))
198
+
197
199
  resp = await self.client.send_transaction(tx, self.KEYPAIR, opts=TxOpts(skip_preflight=True, preflight_commitment=Confirmed))
198
200
  return resp.value
199
201
 
@@ -202,5 +204,5 @@ class SOL:
202
204
 
203
205
 
204
206
  if __name__ == "__main__":
205
- newKeypair = Keypair()
207
+ newKeypair = solders.keypair.Keypair()
206
208
  print("New Keypair:", newKeypair)
@@ -1,10 +1,9 @@
1
1
 
2
2
  import anchorpy
3
3
  from anchorpy import Idl, Provider, Wallet
4
+ import solders
4
5
  from shadowPaySDK.interface.sol import SOL
5
- from solders.keypair import Keypair
6
- import solana.constants as constants
7
- import solana.constants as sol_constants
6
+ import solders
8
7
  import spl.token.constants as spl_constants
9
8
 
10
9
 
@@ -17,7 +16,7 @@ class SOLCheque:
17
16
  self.WRAPED_SOL = spl_constants.WRAPPED_SOL_MINT # wrapped SOL token mint address
18
17
  # self.idl = Idl.from_json(sol_interface.Idl) # Load the IDL for the program
19
18
  def get(self, keypair = None):
20
- pubkey = SOL.get_pubkey(KEYPAIR=Keypair.from_base58_string(self.keystore))
19
+ pubkey = SOL.get_pubkey(KEYPAIR=solders.keypair.Keypair.from_base58_string(self.keystore))
21
20
 
22
21
  return pubkey
23
22
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: shadowPaySDK
3
- Version: 0.2.0.7
3
+ Version: 0.2.0.9
4
4
  Summary: ShadowPay SDK for ERC20/ERC721 and P2P smart contract interaction
5
5
  Author: dazarius_
6
6
  Author-email: your@email.com
File without changes
File without changes
File without changes