abstract-solana 0.0.0.2__tar.gz → 0.0.0.5__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.
Potentially problematic release.
This version of abstract-solana might be problematic. Click here for more details.
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/PKG-INFO +1 -1
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/setup.py +1 -1
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/index_utils.py +1 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/PKG-INFO +1 -1
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/test/test_abstract_solana.py +11 -21
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/README.md +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/setup.cfg +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/__init__.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/account_key_utils.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/genesis_functions.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/log_message_functions.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/price_utils.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/pubkey_utils.py +1 -1
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/signature_data_parse.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/utils.py +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/SOURCES.txt +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/dependency_links.txt +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/requires.txt +0 -0
- {abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/top_level.txt +0 -0
|
@@ -25,6 +25,7 @@ def fix_relaxed_json_in_lp_log_entry(relaxed_json: str) -> str:
|
|
|
25
25
|
|
|
26
26
|
def get_associations(event, txnData):
|
|
27
27
|
accountKeys = get_all_account_keys(txnData)
|
|
28
|
+
input(accountKeys)
|
|
28
29
|
key_properties = {'associatedAccounts': ['accountIndex', 'accounts'], 'programId': ['programIdIndex']}
|
|
29
30
|
new_accounts = {k: None for k in key_properties}
|
|
30
31
|
for key, values in key_properties.items():
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
from abstract_solana import *
|
|
2
2
|
from spl.token.instructions import create_associated_token_account, get_associated_token_address
|
|
3
|
-
from
|
|
3
|
+
from price_functions import *
|
|
4
|
+
PUMP_FUN_PROGRAM = get_pubkey("6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P")
|
|
5
|
+
TOKEN_PROGRAM_ID = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
4
6
|
PUMP_FUN_PROGRAM = get_pubkey("6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P")
|
|
5
7
|
|
|
6
8
|
PUMP_FUN_ASSOC_TOKEN_ACC_PROG = get_pubkey("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL")
|
|
@@ -9,23 +11,7 @@ def get_solcatcher_api(endpoint,*args,**kwargs):
|
|
|
9
11
|
return get_async_response(get_solcatcher_endpoint,endpoint=endpoint,*args,**kwargs)
|
|
10
12
|
def get_balance_info(balanceInfo, programId, authority):
|
|
11
13
|
return next((bal for bal in balanceInfo if programId == bal.get("programId") and authority == bal.get("owner")), {})
|
|
12
|
-
|
|
13
|
-
preBalance = txnData["meta"].get("preTokenBalances", [])
|
|
14
|
-
postBalance = txnData["meta"].get("postTokenBalances", [])
|
|
15
|
-
|
|
16
|
-
# Update transfer_instruction with source, destination, and authority
|
|
17
|
-
accounts = transfer_instruction.get("accounts", [])
|
|
18
|
-
transfer_instruction.update({
|
|
19
|
-
key: accounts[i] for i, key in enumerate(["source", "destination", "authority"])
|
|
20
|
-
})
|
|
21
|
-
|
|
22
|
-
preBalanceInfo = get_balance_info(preBalance, transfer_instruction['programId'], transfer_instruction['authority'])
|
|
23
|
-
postBalanceInfo = get_balance_info(postBalance, transfer_instruction['programId'], transfer_instruction['authority'])
|
|
24
|
-
|
|
25
|
-
amount = preBalanceInfo.get('uiTokenAmount', {}).get('amount', 0) - postBalanceInfo.get('uiTokenAmount', {}).get('amount', 0)
|
|
26
|
-
transfer_instruction['amount'] = amount
|
|
27
|
-
|
|
28
|
-
return transfer_instruction
|
|
14
|
+
|
|
29
15
|
def get_transfer_info(transfer_instructions, txnData):
|
|
30
16
|
for transfer_instruction in transfer_instructions:
|
|
31
17
|
updated_instruction = get_balance_from_instruction(transfer_instruction, txnData)
|
|
@@ -39,6 +25,10 @@ def get_transfer_instructions(txnData,programId=None):
|
|
|
39
25
|
mint = "911eA3wRZ85ZiSTpmCH1hksPGLGgzyVpfMXtJ4zSzVJ5"
|
|
40
26
|
bondingCurve = str(derive_bonding_curve(mint))
|
|
41
27
|
#input(getsignaturesforaddress(str(derive_bonding_curve(mint)[0])))
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
input(
|
|
28
|
+
signature = get_solcatcher_api("getGenesisSignature",account=str(derive_bonding_curve(mint)[0]))
|
|
29
|
+
txnData = get_solcatcher_api("getTransaction",tx_sig=str(signature))
|
|
30
|
+
input(get_all_account_keys(txnData))
|
|
31
|
+
parsed_txnData=parse_instruction_and_token_balances(txnData)
|
|
32
|
+
|
|
33
|
+
input(get_transfer_info(find_in_catalog('transfer',parsed_txnData,programId=PUMP_FUN_PROGRAM),txnData))
|
|
34
|
+
input(get_transfer_instructions(txnData))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/account_key_utils.py
RENAMED
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/genesis_functions.py
RENAMED
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/log_message_functions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
from solders.pubkey import Pubkey
|
|
2
2
|
from solders.signature import Signature
|
|
3
|
-
PUMP_FUN_PROGRAM = get_pubkey("6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P")
|
|
4
3
|
|
|
5
4
|
def get_pubString(obj):
|
|
6
5
|
return Pubkey.from_string(str(obj))
|
|
@@ -62,6 +61,7 @@ def get_sigkey(obj):
|
|
|
62
61
|
|
|
63
62
|
def derive_associated_bonding_curve(mint,programId=None):
|
|
64
63
|
return get_associated_token_address(derive_bonding_curve(mint,programId)[0], get_pubkey(mint))
|
|
64
|
+
PUMP_FUN_PROGRAM = get_pubkey("6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P")
|
|
65
65
|
|
|
66
66
|
def derive_bonding_curve(mint,programId=None):
|
|
67
67
|
programId = programId or PUMP_FUN_PROGRAM
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana/signature_data_parse.py
RENAMED
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/requires.txt
RENAMED
|
File without changes
|
{abstract_solana-0.0.0.2 → abstract_solana-0.0.0.5}/src/abstract_solana.egg-info/top_level.txt
RENAMED
|
File without changes
|