@coinbarrel/sdk 1.2.0 → 1.3.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.
- package/README.md +305 -305
- package/dist/accounts.d.ts +36 -0
- package/dist/accounts.d.ts.map +1 -0
- package/dist/accounts.js +1 -0
- package/dist/accounts.js.map +1 -0
- package/dist/constants.d.ts +81 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +1 -0
- package/dist/constants.js.map +1 -0
- package/dist/create.d.ts +26 -0
- package/dist/create.d.ts.map +1 -0
- package/dist/create.js +1 -0
- package/dist/create.js.map +1 -0
- package/dist/curve.d.ts +37 -0
- package/dist/curve.d.ts.map +1 -0
- package/dist/curve.js +1 -0
- package/dist/curve.js.map +1 -0
- package/dist/index.d.ts +257 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/metadata.d.ts +94 -0
- package/dist/metadata.d.ts.map +1 -0
- package/dist/metadata.js +1 -0
- package/dist/metadata.js.map +1 -0
- package/dist/pda.d.ts +51 -0
- package/dist/pda.d.ts.map +1 -0
- package/dist/pda.js +1 -0
- package/dist/pda.js.map +1 -0
- package/dist/pool.d.ts +32 -0
- package/dist/pool.d.ts.map +1 -0
- package/dist/pool.js +1 -0
- package/dist/pool.js.map +1 -0
- package/dist/rewards.d.ts +21 -0
- package/dist/rewards.d.ts.map +1 -0
- package/dist/rewards.js +1 -0
- package/dist/rewards.js.map +1 -0
- package/dist/types.d.ts +192 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CoinBarrel SDK Constants
|
|
3
|
+
* Network-specific program IDs and configuration
|
|
4
|
+
*/
|
|
5
|
+
import { PublicKey } from '@solana/web3.js';
|
|
6
|
+
export type Network = 'devnet' | 'mainnet';
|
|
7
|
+
export declare const PROGRAM_IDS: Record<Network, PublicKey>;
|
|
8
|
+
export declare const ADMIN_FEE_RECIPIENTS: Record<Network, PublicKey>;
|
|
9
|
+
export declare const NATIVE_MINT: PublicKey;
|
|
10
|
+
export declare const TOKEN_METADATA_PROGRAM_ID: PublicKey;
|
|
11
|
+
export declare const SEEDS: {
|
|
12
|
+
readonly BONDING: Buffer<ArrayBuffer>;
|
|
13
|
+
readonly BONDING_AUTHORITY: Buffer<ArrayBuffer>;
|
|
14
|
+
readonly BONDING_SOL: Buffer<ArrayBuffer>;
|
|
15
|
+
readonly POOL: Buffer<ArrayBuffer>;
|
|
16
|
+
readonly AUTHORITY: Buffer<ArrayBuffer>;
|
|
17
|
+
readonly VAULT: Buffer<ArrayBuffer>;
|
|
18
|
+
readonly LP_MINT: Buffer<ArrayBuffer>;
|
|
19
|
+
readonly LP_VAULT: Buffer<ArrayBuffer>;
|
|
20
|
+
readonly HOLDER_REWARD: Buffer<ArrayBuffer>;
|
|
21
|
+
};
|
|
22
|
+
export declare const DISCRIMINATORS: {
|
|
23
|
+
readonly initialize_barrel_curve: Buffer<ArrayBuffer>;
|
|
24
|
+
readonly create_barrel_token: Buffer<ArrayBuffer>;
|
|
25
|
+
readonly buy_on_curve: Buffer<ArrayBuffer>;
|
|
26
|
+
readonly sell_on_curve: Buffer<ArrayBuffer>;
|
|
27
|
+
readonly sell_max_on_curve: Buffer<ArrayBuffer>;
|
|
28
|
+
readonly configure_bonding_fees: Buffer<ArrayBuffer>;
|
|
29
|
+
readonly configure_virtual_curve: Buffer<ArrayBuffer>;
|
|
30
|
+
readonly initialize_pool: Buffer<ArrayBuffer>;
|
|
31
|
+
readonly swap_sol_to_token: Buffer<ArrayBuffer>;
|
|
32
|
+
readonly swap_token_to_sol: Buffer<ArrayBuffer>;
|
|
33
|
+
readonly swap_token_to_sol_max: Buffer<ArrayBuffer>;
|
|
34
|
+
readonly swap: Buffer<ArrayBuffer>;
|
|
35
|
+
readonly add_liquidity: Buffer<ArrayBuffer>;
|
|
36
|
+
readonly remove_liquidity: Buffer<ArrayBuffer>;
|
|
37
|
+
readonly migrate_barrel: Buffer<ArrayBuffer>;
|
|
38
|
+
readonly claim_holder_rewards: Buffer<ArrayBuffer>;
|
|
39
|
+
readonly claim_holder_rewards_curve: Buffer<ArrayBuffer>;
|
|
40
|
+
readonly init_holder_reward_account_curve: Buffer<ArrayBuffer>;
|
|
41
|
+
readonly init_holder_reward_account_pool: Buffer<ArrayBuffer>;
|
|
42
|
+
};
|
|
43
|
+
export declare const BONDING_CURVE_OFFSETS: {
|
|
44
|
+
readonly DISCRIMINATOR: 0;
|
|
45
|
+
readonly TOKEN_MINT: 8;
|
|
46
|
+
readonly TOKEN_VAULT: number;
|
|
47
|
+
readonly ADMIN_FEE_RECIPIENT: number;
|
|
48
|
+
readonly CREATOR_FEE_RECIPIENT: number;
|
|
49
|
+
readonly FEE_BPS: number;
|
|
50
|
+
readonly VARIANT: number;
|
|
51
|
+
readonly BUMP: number;
|
|
52
|
+
readonly V_TOKEN: number;
|
|
53
|
+
readonly V_SOL: number;
|
|
54
|
+
readonly AMP_BPS: number;
|
|
55
|
+
readonly TRADER_REWARDS_SHARE_BPS: number;
|
|
56
|
+
readonly MIN_PRICE: number;
|
|
57
|
+
readonly MAX_SUPPLY: number;
|
|
58
|
+
readonly TOTAL_SOLD: number;
|
|
59
|
+
readonly PAUSED: number;
|
|
60
|
+
};
|
|
61
|
+
export declare const POOL_OFFSETS: {
|
|
62
|
+
readonly DISCRIMINATOR: 0;
|
|
63
|
+
readonly TOKEN_A_MINT: 8;
|
|
64
|
+
readonly TOKEN_B_MINT: number;
|
|
65
|
+
readonly TOKEN_A_VAULT: number;
|
|
66
|
+
readonly TOKEN_B_VAULT: number;
|
|
67
|
+
readonly LP_MINT: number;
|
|
68
|
+
readonly FEE_RATE: number;
|
|
69
|
+
readonly AUTHORITY: number;
|
|
70
|
+
readonly BUMP: number;
|
|
71
|
+
readonly IS_LOCKED: number;
|
|
72
|
+
readonly POOL_TYPE: number;
|
|
73
|
+
readonly TRADER_REWARDS_SHARE_BPS: number;
|
|
74
|
+
readonly ADMIN_FEE_RECIPIENT: number;
|
|
75
|
+
readonly CREATOR_FEE_RECIPIENT: number;
|
|
76
|
+
};
|
|
77
|
+
export declare const DEFAULT_DECIMALS = 6;
|
|
78
|
+
export declare const DEFAULT_SLIPPAGE_BPS = 100;
|
|
79
|
+
export declare const LAMPORTS_PER_SOL = 1000000000n;
|
|
80
|
+
export declare const TOKEN_DECIMALS_MULTIPLIER = 1000000n;
|
|
81
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE3C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAGlD,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAG3D,CAAC;AAGF,eAAO,MAAM,WAAW,WAA+D,CAAC;AAGxF,eAAO,MAAM,yBAAyB,WAErC,CAAC;AAIF,eAAO,MAAM,KAAK;;;;;;;;;;CAUR,CAAC;AAKX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;CA2BjB,CAAC;AAKX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;CAiBxB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAef,CAAC;AAIX,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,gBAAgB,cAAiB,CAAC;AAC/C,eAAO,MAAM,yBAAyB,WAAa,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6CAA4C;AAM/B,QAAA,WAAW,GAA+B;IACtD,MAAM,EAAE,IAAI,mBAAS,CAAC,8CAA8C,CAAC;IACrE,OAAO,EAAE,IAAI,mBAAS,CAAC,8CAA8C,CAAC;CACtE,CAAC;AAEF,uDAAuD;AAC1C,QAAA,oBAAoB,GAA+B;IAC/D,MAAM,EAAE,IAAI,mBAAS,CAAC,8CAA8C,CAAC;IACrE,OAAO,EAAE,IAAI,mBAAS,CAAC,8CAA8C,CAAC;CACtE,CAAC;AAEF,mCAAmC;AACtB,QAAA,WAAW,GAAG,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAExF,4DAA4D;AAC/C,QAAA,yBAAyB,GAAG,IAAI,mBAAS,CACrD,6CAA6C,CAC7C,CAAC;AAEF,wCAAwC;AAE3B,QAAA,KAAK,GAAG;IACpB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACnD,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;CAClC,CAAC;AAEX,yDAAyD;AACzD,4FAA4F;AAE/E,QAAA,cAAc,GAAG;IAC7B,gBAAgB;IAChB,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzE,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACrE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClE,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,sBAAsB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACzE,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAE3E,WAAW;IACX,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAClE,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACrE,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC3D,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAChE,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAEnE,YAAY;IACZ,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAErE,UAAU;IACV,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1E,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9E,gCAAgC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACrF,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;CAC1E,CAAC;AAEX,mDAAmD;AACnD,oCAAoC;AAEvB,QAAA,qBAAqB,GAAG;IACpC,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,CAAC,GAAG,EAAE;IACnB,mBAAmB,EAAE,CAAC,GAAG,EAAE;IAC3B,qBAAqB,EAAE,CAAC,GAAG,EAAE;IAC7B,OAAO,EAAE,CAAC,GAAG,GAAG;IAChB,OAAO,EAAE,CAAC,GAAG,GAAG;IAChB,IAAI,EAAE,CAAC,GAAG,GAAG;IACb,OAAO,EAAE,CAAC,GAAG,GAAG;IAChB,KAAK,EAAE,CAAC,GAAG,GAAG;IACd,OAAO,EAAE,CAAC,GAAG,GAAG;IAChB,wBAAwB,EAAE,CAAC,GAAG,GAAG;IACjC,SAAS,EAAE,CAAC,GAAG,GAAG;IAClB,UAAU,EAAE,CAAC,GAAG,GAAG;IACnB,UAAU,EAAE,CAAC,GAAG,GAAG;IACnB,MAAM,EAAE,CAAC,GAAG,GAAG;CACN,CAAC;AAEE,QAAA,YAAY,GAAG;IAC3B,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,YAAY,EAAE,CAAC,GAAG,EAAE;IACpB,aAAa,EAAE,CAAC,GAAG,EAAE;IACrB,aAAa,EAAE,CAAC,GAAG,EAAE;IACrB,OAAO,EAAE,CAAC,GAAG,GAAG;IAChB,QAAQ,EAAE,CAAC,GAAG,GAAG;IACjB,SAAS,EAAE,CAAC,GAAG,GAAG;IAClB,IAAI,EAAE,CAAC,GAAG,GAAG;IACb,SAAS,EAAE,CAAC,GAAG,GAAG;IAClB,SAAS,EAAE,CAAC,GAAG,GAAG;IAClB,wBAAwB,EAAE,CAAC,GAAG,GAAG;IACjC,mBAAmB,EAAE,CAAC,GAAG,GAAG;IAC5B,qBAAqB,EAAE,CAAC,GAAG,GAAG;CACrB,CAAC;AAEX,uCAAuC;AAE1B,QAAA,gBAAgB,GAAG,CAAC,CAAC;AACrB,QAAA,oBAAoB,GAAG,GAAG,CAAC,CAAC,KAAK;AACjC,QAAA,gBAAgB,GAAG,WAAc,CAAC;AAClC,QAAA,yBAAyB,GAAG,QAAU,CAAC,CAAC,sBAAsB"}
|
package/dist/create.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token Creation
|
|
3
|
+
* Create new barrel tokens with atomically revoked mint/freeze authority
|
|
4
|
+
*/
|
|
5
|
+
import { Keypair, PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
6
|
+
import { type Network } from './constants.js';
|
|
7
|
+
import type { CreateBarrelTokenParams } from './types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Build create_barrel_token instruction
|
|
10
|
+
*
|
|
11
|
+
* Creates a new token with:
|
|
12
|
+
* - Mint authority: revoked immediately after minting 1B tokens
|
|
13
|
+
* - Freeze authority: null from creation
|
|
14
|
+
* - 1B total supply minted to bonding curve vault
|
|
15
|
+
* - Metadata created via Metaplex CPI
|
|
16
|
+
*
|
|
17
|
+
* @param params - Token creation parameters
|
|
18
|
+
* @param programId - CoinBarrel program ID
|
|
19
|
+
* @param network - Network for admin fee recipient
|
|
20
|
+
* @returns Object containing instruction and mint keypair (must sign transaction)
|
|
21
|
+
*/
|
|
22
|
+
export declare function buildCreateBarrelTokenInstruction(params: CreateBarrelTokenParams, programId: PublicKey, network: Network): {
|
|
23
|
+
instructions: TransactionInstruction[];
|
|
24
|
+
mintKeypair: Keypair;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=create.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEN,OAAO,EACP,SAAS,EAGT,sBAAsB,EACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAIN,KAAK,OAAO,EACZ,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAuC1D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAChD,MAAM,EAAE,uBAAuB,EAC/B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,GACd;IAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CA6DlE"}
|
package/dist/create.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"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"}
|
package/dist/curve.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bonding Curve Operations
|
|
3
|
+
* Buy and sell tokens on the bonding curve
|
|
4
|
+
*/
|
|
5
|
+
import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
6
|
+
import type { BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, BuyQuote, SellQuote } from './types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Calculate buy quote for bonding curve
|
|
9
|
+
* Uses amplified constant product formula matching the program:
|
|
10
|
+
* k = vSol_eff * vToken_eff where _eff = base * amp_bps / 10000
|
|
11
|
+
*/
|
|
12
|
+
export declare function getBuyQuote(connection: Connection, tokenMint: PublicKey, solIn: bigint, programId: PublicKey): Promise<BuyQuote | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Calculate sell quote for bonding curve
|
|
15
|
+
* Uses amplified constant product formula matching the program
|
|
16
|
+
*/
|
|
17
|
+
export declare function getSellQuote(connection: Connection, tokenMint: PublicKey, tokensIn: bigint, programId: PublicKey): Promise<SellQuote | null>;
|
|
18
|
+
/**
|
|
19
|
+
* Build buy_on_curve instruction
|
|
20
|
+
*
|
|
21
|
+
* IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
|
|
22
|
+
* The program enforces that fees go to the correct recipients.
|
|
23
|
+
*/
|
|
24
|
+
export declare function buildBuyOnCurveInstruction(connection: Connection, params: BuyOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
|
|
25
|
+
/**
|
|
26
|
+
* Build sell_on_curve instruction
|
|
27
|
+
*
|
|
28
|
+
* IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
|
|
29
|
+
* Includes holder reward account in remaining_accounts for auto-payout.
|
|
30
|
+
*/
|
|
31
|
+
export declare function buildSellOnCurveInstruction(connection: Connection, params: SellOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Build sell_max_on_curve instruction (sell entire balance)
|
|
34
|
+
* Includes holder reward account in remaining_accounts for auto-payout.
|
|
35
|
+
*/
|
|
36
|
+
export declare function buildSellMaxOnCurveInstruction(connection: Connection, params: SellMaxOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
|
|
37
|
+
//# sourceMappingURL=curve.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAiB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAe/F,OAAO,KAAK,EACX,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,MAAM,YAAY,CAAC;AAYpB;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAiD1B;AAED;;;GAGG;AACH,wBAAsB,YAAY,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA+C3B;AAID;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC/C,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAmDnC;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAChD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwCnC;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CACnD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,oBAAoB,EAC5B,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwCnC"}
|
package/dist/curve.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CoinBarrel SDK
|
|
3
|
+
*
|
|
4
|
+
* SDK for integrating with CoinBarrel AMM - bonding curves and liquidity pools on Solana.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import { CoinBarrel } from '@coinbarrel/sdk';
|
|
9
|
+
*
|
|
10
|
+
* // Initialize SDK
|
|
11
|
+
* const sdk = new CoinBarrel({
|
|
12
|
+
* connection: new Connection('https://api.mainnet-beta.solana.com'),
|
|
13
|
+
* network: 'mainnet'
|
|
14
|
+
* });
|
|
15
|
+
*
|
|
16
|
+
* // Get a buy quote
|
|
17
|
+
* const quote = await sdk.curve.getBuyQuote(tokenMint, solAmount);
|
|
18
|
+
*
|
|
19
|
+
* // Build buy instruction
|
|
20
|
+
* const instructions = await sdk.curve.buildBuyInstruction({
|
|
21
|
+
* tokenMint,
|
|
22
|
+
* buyer: userWallet.publicKey,
|
|
23
|
+
* lamportsIn: BigInt(0.1 * 1e9) // 0.1 SOL
|
|
24
|
+
* });
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @packageDocumentation
|
|
28
|
+
*/
|
|
29
|
+
import { Connection, Keypair, PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
30
|
+
import { type Network } from './constants.js';
|
|
31
|
+
import * as metadata from './metadata.js';
|
|
32
|
+
import type { CoinBarrelConfig, BondingCurveState, PoolState, MarketInfo, BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, SwapSolToTokenParams, SwapTokenToSolParams, SwapTokenToSolMaxParams, CreateBarrelTokenParams, BuyQuote, SellQuote, SwapQuote } from './types.js';
|
|
33
|
+
export * from './constants.js';
|
|
34
|
+
export * from './types.js';
|
|
35
|
+
export * from './pda.js';
|
|
36
|
+
export { getBondingCurveState, getPoolState, getMarketInfo, getUserTokenBalance, } from './accounts.js';
|
|
37
|
+
export { getBuyQuote, getSellQuote } from './curve.js';
|
|
38
|
+
export { getSwapSolToTokenQuote, getSwapTokenToSolQuote } from './pool.js';
|
|
39
|
+
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata, type TokenMetadata, type TokenMetadataJson, } from './metadata.js';
|
|
40
|
+
export { buildCreateBarrelTokenInstruction } from './create.js';
|
|
41
|
+
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, } from './rewards.js';
|
|
42
|
+
/**
|
|
43
|
+
* CoinBarrel SDK - Main entry point
|
|
44
|
+
*
|
|
45
|
+
* Provides easy access to all CoinBarrel AMM functionality:
|
|
46
|
+
* - Bonding curve trading (pre-graduation)
|
|
47
|
+
* - AMM pool trading (post-graduation)
|
|
48
|
+
* - Market data and quotes
|
|
49
|
+
*
|
|
50
|
+
* @remarks
|
|
51
|
+
* Fee recipients are read from on-chain state and cannot be modified.
|
|
52
|
+
* The program enforces that all fees go to the correct recipients.
|
|
53
|
+
*/
|
|
54
|
+
export declare class CoinBarrel {
|
|
55
|
+
/** Solana RPC connection */
|
|
56
|
+
readonly connection: Connection;
|
|
57
|
+
/** Network (devnet or mainnet) */
|
|
58
|
+
readonly network: Network;
|
|
59
|
+
/** Program ID for the current network */
|
|
60
|
+
readonly programId: PublicKey;
|
|
61
|
+
/** Admin fee recipient for the current network */
|
|
62
|
+
readonly adminFeeRecipient: PublicKey;
|
|
63
|
+
/** Bonding curve operations */
|
|
64
|
+
readonly curve: CurveModule;
|
|
65
|
+
/** AMM pool operations */
|
|
66
|
+
readonly pool: PoolModule;
|
|
67
|
+
constructor(config: CoinBarrelConfig);
|
|
68
|
+
/**
|
|
69
|
+
* Get comprehensive market info for a token
|
|
70
|
+
* Automatically detects if on bonding curve or AMM pool
|
|
71
|
+
*/
|
|
72
|
+
getMarketInfo(tokenMint: PublicKey): Promise<MarketInfo | null>;
|
|
73
|
+
/**
|
|
74
|
+
* Get user's token balance
|
|
75
|
+
*/
|
|
76
|
+
getUserBalance(tokenMint: PublicKey, user: PublicKey): Promise<bigint>;
|
|
77
|
+
/**
|
|
78
|
+
* Check if a token is on bonding curve (not yet graduated)
|
|
79
|
+
*/
|
|
80
|
+
isOnCurve(tokenMint: PublicKey): Promise<boolean>;
|
|
81
|
+
/**
|
|
82
|
+
* Check if a token has graduated to AMM pool
|
|
83
|
+
*/
|
|
84
|
+
isOnPool(tokenMint: PublicKey): Promise<boolean>;
|
|
85
|
+
/**
|
|
86
|
+
* Get on-chain token metadata (name, symbol, uri)
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const meta = await sdk.getTokenMetadata(tokenMint);
|
|
91
|
+
* console.log(meta?.name, meta?.symbol);
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
getTokenMetadata(tokenMint: PublicKey): Promise<metadata.TokenMetadata | null>;
|
|
95
|
+
/**
|
|
96
|
+
* Get full token metadata including off-chain JSON (image, description, socials)
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```typescript
|
|
100
|
+
* const meta = await sdk.getTokenMetadataJson(tokenMint);
|
|
101
|
+
* console.log(meta?.name, meta?.image, meta?.twitter);
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
getTokenMetadataJson(tokenMint: PublicKey, options?: {
|
|
105
|
+
timeoutMs?: number;
|
|
106
|
+
}): Promise<metadata.TokenMetadataJson | null>;
|
|
107
|
+
/**
|
|
108
|
+
* Batch fetch metadata for multiple tokens (more efficient)
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```typescript
|
|
112
|
+
* const mints = [mint1, mint2, mint3];
|
|
113
|
+
* const metadataMap = await sdk.batchGetTokenMetadata(mints);
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
batchGetTokenMetadata(mints: PublicKey[]): Promise<Map<string, metadata.TokenMetadata | null>>;
|
|
117
|
+
/** Get bonding curve PDA for a token */
|
|
118
|
+
getBondingCurvePda(tokenMint: PublicKey): PublicKey;
|
|
119
|
+
/** Get pool PDA for a token */
|
|
120
|
+
getPoolPda(tokenMint: PublicKey): PublicKey;
|
|
121
|
+
/** Get holder reward PDA for a user + token */
|
|
122
|
+
getHolderRewardPda(tokenMint: PublicKey, holder: PublicKey): PublicKey;
|
|
123
|
+
/** Get Metaplex metadata PDA for a token */
|
|
124
|
+
getMetadataPda(tokenMint: PublicKey): PublicKey;
|
|
125
|
+
/**
|
|
126
|
+
* Build create barrel token instruction
|
|
127
|
+
*
|
|
128
|
+
* Creates a new token with atomically revoked mint/freeze authority.
|
|
129
|
+
* Returns the instruction and a mint keypair that must sign the transaction.
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```typescript
|
|
133
|
+
* const { instructions, mintKeypair } = sdk.buildCreateTokenInstruction({
|
|
134
|
+
* payer: wallet.publicKey,
|
|
135
|
+
* name: "My Token",
|
|
136
|
+
* symbol: "MTK",
|
|
137
|
+
* uri: "https://...",
|
|
138
|
+
* creatorFeeRecipient: wallet.publicKey,
|
|
139
|
+
* });
|
|
140
|
+
*
|
|
141
|
+
* // Add mintKeypair as signer when sending transaction
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
buildCreateTokenInstruction(params: CreateBarrelTokenParams): {
|
|
145
|
+
instructions: TransactionInstruction[];
|
|
146
|
+
mintKeypair: Keypair;
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Build claim holder rewards instruction for bonding curve
|
|
150
|
+
*
|
|
151
|
+
* Claims accumulated holder rewards paid in SOL.
|
|
152
|
+
*/
|
|
153
|
+
buildClaimRewardsCurveInstruction(tokenMint: PublicKey, holder: PublicKey): Promise<TransactionInstruction[]>;
|
|
154
|
+
/**
|
|
155
|
+
* Build claim holder rewards instruction for AMM pool
|
|
156
|
+
*
|
|
157
|
+
* Claims accumulated holder rewards (WSOL unwrapped to SOL).
|
|
158
|
+
*/
|
|
159
|
+
buildClaimRewardsPoolInstruction(tokenMint: PublicKey, holder: PublicKey): Promise<TransactionInstruction[]>;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Bonding Curve Operations
|
|
163
|
+
* For trading tokens that haven't graduated yet
|
|
164
|
+
*/
|
|
165
|
+
declare class CurveModule {
|
|
166
|
+
private sdk;
|
|
167
|
+
constructor(sdk: CoinBarrel);
|
|
168
|
+
/**
|
|
169
|
+
* Get bonding curve state
|
|
170
|
+
*/
|
|
171
|
+
getState(tokenMint: PublicKey): Promise<BondingCurveState | null>;
|
|
172
|
+
/**
|
|
173
|
+
* Get buy quote - how many tokens for X SOL
|
|
174
|
+
* @param tokenMint Token to buy
|
|
175
|
+
* @param solAmount SOL amount in lamports
|
|
176
|
+
*/
|
|
177
|
+
getBuyQuote(tokenMint: PublicKey, solAmount: bigint): Promise<BuyQuote | null>;
|
|
178
|
+
/**
|
|
179
|
+
* Get sell quote - how much SOL for X tokens
|
|
180
|
+
* @param tokenMint Token to sell
|
|
181
|
+
* @param tokenAmount Token amount (raw, with decimals)
|
|
182
|
+
*/
|
|
183
|
+
getSellQuote(tokenMint: PublicKey, tokenAmount: bigint): Promise<SellQuote | null>;
|
|
184
|
+
/**
|
|
185
|
+
* Build buy instruction
|
|
186
|
+
*
|
|
187
|
+
* @remarks Fee recipients are read from on-chain and cannot be modified.
|
|
188
|
+
* The program enforces fees go to the correct recipients.
|
|
189
|
+
*/
|
|
190
|
+
buildBuyInstruction(params: BuyOnCurveParams): Promise<TransactionInstruction[]>;
|
|
191
|
+
/**
|
|
192
|
+
* Build sell instruction
|
|
193
|
+
*/
|
|
194
|
+
buildSellInstruction(params: SellOnCurveParams): Promise<TransactionInstruction[]>;
|
|
195
|
+
/**
|
|
196
|
+
* Build sell max instruction (sell entire balance)
|
|
197
|
+
*/
|
|
198
|
+
buildSellMaxInstruction(params: SellMaxOnCurveParams): Promise<TransactionInstruction[]>;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* AMM Pool Operations
|
|
202
|
+
* For trading tokens that have graduated to the AMM
|
|
203
|
+
*/
|
|
204
|
+
declare class PoolModule {
|
|
205
|
+
private sdk;
|
|
206
|
+
constructor(sdk: CoinBarrel);
|
|
207
|
+
/**
|
|
208
|
+
* Get pool state
|
|
209
|
+
*/
|
|
210
|
+
getState(tokenMint: PublicKey): Promise<PoolState | null>;
|
|
211
|
+
/**
|
|
212
|
+
* Get pool balances
|
|
213
|
+
*/
|
|
214
|
+
getBalances(tokenMint: PublicKey): Promise<{
|
|
215
|
+
solBalance: bigint;
|
|
216
|
+
tokenBalance: bigint;
|
|
217
|
+
} | null>;
|
|
218
|
+
/**
|
|
219
|
+
* Get swap quote for SOL -> Token
|
|
220
|
+
*/
|
|
221
|
+
getSwapSolToTokenQuote(tokenMint: PublicKey, solAmount: bigint): Promise<SwapQuote | null>;
|
|
222
|
+
/**
|
|
223
|
+
* Get swap quote for Token -> SOL
|
|
224
|
+
*/
|
|
225
|
+
getSwapTokenToSolQuote(tokenMint: PublicKey, tokenAmount: bigint): Promise<SwapQuote | null>;
|
|
226
|
+
/**
|
|
227
|
+
* Build swap SOL to token instruction
|
|
228
|
+
*
|
|
229
|
+
* @remarks Fee recipients are read from on-chain and cannot be modified.
|
|
230
|
+
*/
|
|
231
|
+
buildSwapSolToTokenInstruction(params: SwapSolToTokenParams): Promise<TransactionInstruction[]>;
|
|
232
|
+
/**
|
|
233
|
+
* Build swap token to SOL instruction
|
|
234
|
+
*/
|
|
235
|
+
buildSwapTokenToSolInstruction(params: SwapTokenToSolParams): Promise<TransactionInstruction[]>;
|
|
236
|
+
/**
|
|
237
|
+
* Build swap token to SOL max instruction (sell entire balance)
|
|
238
|
+
*/
|
|
239
|
+
buildSwapTokenToSolMaxInstruction(params: SwapTokenToSolMaxParams): Promise<TransactionInstruction[]>;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Convert SOL to lamports
|
|
243
|
+
*/
|
|
244
|
+
export declare function solToLamports(sol: number): bigint;
|
|
245
|
+
/**
|
|
246
|
+
* Convert lamports to SOL
|
|
247
|
+
*/
|
|
248
|
+
export declare function lamportsToSol(lamports: bigint): number;
|
|
249
|
+
/**
|
|
250
|
+
* Convert token amount to raw (with decimals)
|
|
251
|
+
*/
|
|
252
|
+
export declare function toRawAmount(amount: number, decimals?: number): bigint;
|
|
253
|
+
/**
|
|
254
|
+
* Convert raw amount to UI (without decimals)
|
|
255
|
+
*/
|
|
256
|
+
export declare function toUiAmount(rawAmount: bigint, decimals?: number): number;
|
|
257
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6ZH,sCAEC;AAKD,sCAEC;AAKD,kCAEC;AAKD,gCAEC;AAjbD,iDAAmG;AACnG,8CAAgC;AAChC,wDAA0C;AAC1C,kDAAoC;AACpC,gDAAkC;AAClC,wDAA0C;AAC1C,oDAAsC;AACtC,sDAAwC;AAoBxC,yCAAyC;AAEzC,iDAA+B;AAC/B,6CAA2B;AAC3B,2CAAyB;AACzB,6CAKuB;AAJtB,mHAAA,oBAAoB,OAAA;AACpB,2GAAA,YAAY,OAAA;AACZ,4GAAA,aAAa,OAAA;AACb,kHAAA,mBAAmB,OAAA;AAEpB,uCAAuD;AAA9C,uGAAA,WAAW,OAAA;AAAE,wGAAA,YAAY,OAAA;AAClC,qCAA2E;AAAlE,iHAAA,sBAAsB,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AACvD,6CAQuB;AAPtB,+GAAA,gBAAgB,OAAA;AAChB,mHAAA,oBAAoB,OAAA;AACpB,oHAAA,qBAAqB,OAAA;AACrB,6GAAA,cAAc,OAAA;AACd,oHAAA,qBAAqB,OAAA;AAItB,yCAAgE;AAAvD,8HAAA,iCAAiC,OAAA;AAC1C,2CAGsB;AAFrB,qIAAA,uCAAuC,OAAA;AACvC,gIAAA,kCAAkC,OAAA;AAGnC,wCAAwC;AAExC;;;;;;;;;;;GAWG;AACH,MAAa,UAAU;IACtB,4BAA4B;IACZ,UAAU,CAAa;IACvC,kCAAkC;IAClB,OAAO,CAAU;IACjC,yCAAyC;IACzB,SAAS,CAAY;IACrC,kDAAkD;IAClC,iBAAiB,CAAY;IAE7C,+BAA+B;IACf,KAAK,CAAc;IACnC,0BAA0B;IACV,IAAI,CAAa;IAEjC,YAAY,MAAwB;QACnC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,0BAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,iBAAiB,GAAG,mCAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE9D,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,0CAA0C;IAE1C;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,SAAoB;QACvC,OAAO,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,SAAoB,EAAE,IAAe;QACzD,OAAO,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,SAAoB;QACnC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CACrD,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,SAAS,CACd,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,kDAAkD;QAClD,OAAO,CAAC,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,OAAO,SAAS,KAAK,IAAI,CAAC;IAC3B,CAAC;IAED,6CAA6C;IAE7C;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAoB;QAC1C,OAAO,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,oBAAoB,CACzB,SAAoB,EACpB,OAAgC;QAEhC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,qBAAqB,CAC1B,KAAkB;QAElB,OAAO,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,0CAA0C;IAE1C,wCAAwC;IACxC,kBAAkB,CAAC,SAAoB;QACtC,OAAO,GAAG,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED,+BAA+B;IAC/B,UAAU,CAAC,SAAoB;QAC9B,OAAO,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,+CAA+C;IAC/C,kBAAkB,CAAC,SAAoB,EAAE,MAAiB;QACzD,OAAO,GAAG,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;IAED,4CAA4C;IAC5C,cAAc,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,6CAA6C;IAE7C;;;;;;;;;;;;;;;;;;OAkBG;IACH,2BAA2B,CAAC,MAA+B;QAI1D,OAAO,MAAM,CAAC,iCAAiC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvF,CAAC;IAED,sCAAsC;IAEtC;;;;OAIG;IACH,KAAK,CAAC,iCAAiC,CACtC,SAAoB,EACpB,MAAiB;QAEjB,OAAO,OAAO,CAAC,uCAAuC,CACrD,IAAI,CAAC,UAAU,EACf,EAAE,SAAS,EAAE,MAAM,EAAE,EACrB,IAAI,CAAC,SAAS,CACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gCAAgC,CACrC,SAAoB,EACpB,MAAiB;QAEjB,OAAO,OAAO,CAAC,kCAAkC,CAChD,IAAI,CAAC,UAAU,EACf,EAAE,SAAS,EAAE,MAAM,EAAE,EACrB,IAAI,CAAC,SAAS,CACd,CAAC;IACH,CAAC;CACD;AAjMD,gCAiMC;AAED,2CAA2C;AAE3C;;;GAGG;AACH,MAAM,WAAW;IACI;IAApB,YAAoB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAAG,CAAC;IAEvC;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,SAAoB,EAAE,SAAiB;QACxD,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,SAAoB,EAAE,WAAmB;QAC3D,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAwB;QACjD,OAAO,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAAyB;QACnD,OAAO,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAAC,MAA4B;QACzD,OAAO,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9F,CAAC;CACD;AAED,0CAA0C;AAE1C;;;GAGG;AACH,MAAM,UAAU;IACK;IAApB,YAAoB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAAG,CAAC;IAEvC;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAChB,SAAoB;QAEpB,OAAO,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,SAAoB,EAAE,SAAiB;QACnE,OAAO,IAAI,CAAC,sBAAsB,CACjC,IAAI,CAAC,GAAG,CAAC,UAAU,EACnB,SAAS,EACT,SAAS,EACT,IAAI,CAAC,GAAG,CAAC,SAAS,CAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAC3B,SAAoB,EACpB,WAAmB;QAEnB,OAAO,IAAI,CAAC,sBAAsB,CACjC,IAAI,CAAC,GAAG,CAAC,UAAU,EACnB,SAAS,EACT,WAAW,EACX,IAAI,CAAC,GAAG,CAAC,SAAS,CAClB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,8BAA8B,CACnC,MAA4B;QAE5B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,8BAA8B,CACnC,MAA4B;QAE5B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iCAAiC,CACtC,MAA+B;QAE/B,OAAO,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAChG,CAAC;CACD;AAED,gDAAgD;AAEhD;;GAEG;AACH,SAAgB,aAAa,CAAC,GAAW;IACxC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,+BAAgB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,+BAAgB,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,MAAc,EAAE,WAAmB,CAAC;IAC/D,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,SAAiB,EAAE,WAAmB,CAAC;IACjE,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token Metadata Fetching
|
|
3
|
+
* Read Metaplex token metadata for CoinBarrel tokens
|
|
4
|
+
*/
|
|
5
|
+
import { Connection, PublicKey } from '@solana/web3.js';
|
|
6
|
+
/**
|
|
7
|
+
* On-chain token metadata from Metaplex
|
|
8
|
+
*/
|
|
9
|
+
export interface TokenMetadata {
|
|
10
|
+
/** Token name */
|
|
11
|
+
name: string;
|
|
12
|
+
/** Token symbol/ticker */
|
|
13
|
+
symbol: string;
|
|
14
|
+
/** URI pointing to off-chain JSON metadata */
|
|
15
|
+
uri: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Off-chain token metadata JSON (common Metaplex-style schema).
|
|
19
|
+
*
|
|
20
|
+
* This is intentionally permissive since creators may include extra fields.
|
|
21
|
+
*/
|
|
22
|
+
export interface TokenMetadataJson extends TokenMetadata {
|
|
23
|
+
/** Short description */
|
|
24
|
+
description?: string;
|
|
25
|
+
/** Image URL */
|
|
26
|
+
image?: string;
|
|
27
|
+
/** Project website / external URL */
|
|
28
|
+
external_url?: string;
|
|
29
|
+
/** Common socials */
|
|
30
|
+
twitter?: string;
|
|
31
|
+
telegram?: string;
|
|
32
|
+
website?: string;
|
|
33
|
+
[key: string]: unknown;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Derive Metaplex metadata PDA for a token mint
|
|
37
|
+
*/
|
|
38
|
+
export declare function getMetadataPda(mint: PublicKey): PublicKey;
|
|
39
|
+
/**
|
|
40
|
+
* Parse Metaplex metadata from raw account data
|
|
41
|
+
*
|
|
42
|
+
* Layout:
|
|
43
|
+
* - key: 1 byte
|
|
44
|
+
* - update_authority: 32 bytes
|
|
45
|
+
* - mint: 32 bytes
|
|
46
|
+
* - name: 4 bytes length + string
|
|
47
|
+
* - symbol: 4 bytes length + string
|
|
48
|
+
* - uri: 4 bytes length + string
|
|
49
|
+
*/
|
|
50
|
+
export declare function parseMetaplexMetadata(data: Buffer): TokenMetadata | null;
|
|
51
|
+
/**
|
|
52
|
+
* Fetch on-chain token metadata from Metaplex
|
|
53
|
+
*
|
|
54
|
+
* Returns the name, symbol, and URI stored on-chain.
|
|
55
|
+
* Use `getTokenMetadataJson` to also fetch the off-chain JSON.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* const metadata = await getTokenMetadata(connection, tokenMint);
|
|
60
|
+
* if (metadata) {
|
|
61
|
+
* console.log(metadata.name); // "My Token"
|
|
62
|
+
* console.log(metadata.symbol); // "MTK"
|
|
63
|
+
* console.log(metadata.uri); // "https://..."
|
|
64
|
+
* }
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function getTokenMetadata(connection: Connection, mint: PublicKey): Promise<TokenMetadata | null>;
|
|
68
|
+
/**
|
|
69
|
+
* Fetch on-chain Metaplex metadata and then fetch the off-chain JSON pointed to by the URI.
|
|
70
|
+
*/
|
|
71
|
+
export declare function getTokenMetadataJson(connection: Connection, mint: PublicKey, options?: {
|
|
72
|
+
timeoutMs?: number;
|
|
73
|
+
}): Promise<TokenMetadataJson | null>;
|
|
74
|
+
/**
|
|
75
|
+
* Batch fetch metadata for multiple tokens
|
|
76
|
+
*
|
|
77
|
+
* More efficient than calling getTokenMetadata individually.
|
|
78
|
+
*
|
|
79
|
+
* @param connection - Solana RPC connection
|
|
80
|
+
* @param mints - Array of token mint addresses
|
|
81
|
+
* @returns Map of mint address string to metadata
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```typescript
|
|
85
|
+
* const mints = [mint1, mint2, mint3];
|
|
86
|
+
* const metadataMap = await batchGetTokenMetadata(connection, mints);
|
|
87
|
+
*
|
|
88
|
+
* for (const [mintStr, metadata] of metadataMap) {
|
|
89
|
+
* console.log(`${mintStr}: ${metadata?.name}`);
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare function batchGetTokenMetadata(connection: Connection, mints: PublicKey[]): Promise<Map<string, TokenMetadata | null>>;
|
|
94
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKxD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACvD,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAMzD;AAmBD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA0BxE;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,gBAAgB,CACrC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAa/B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA4DnC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,SAAS,EAAE,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC,CAAC,CAuC5C"}
|
package/dist/metadata.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA2CH,wCAMC;AA8BD,sDA0BC;AAoBD,4CAgBC;AAKD,oDAgEC;AAqBD,sDA0CC;AA/QD,6CAAwD;AACxD,iDAA2D;AAmC3D,kCAAkC;AAElC;;GAEG;AACH,SAAgB,cAAc,CAAC,IAAe;IAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC7C,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,wCAAyB,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAChF,wCAAyB,CACzB,CAAC;IACF,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,sCAAsC;AAEtC;;GAEG;AACH,SAAS,wBAAwB,CAAC,IAAY,EAAE,MAAc;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;IACzB,MAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3B,MAAM,KAAK,GAAG,IAAI;SAChB,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;SACpB,QAAQ,CAAC,MAAM,CAAC;SAChB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;SAClB,IAAI,EAAE,CAAC;IACT,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,qBAAqB,CAAC,IAAY;IACjD,IAAI,CAAC;QACJ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE;YAAE,OAAO,IAAI,CAAC;QAE3C,+DAA+D;QAC/D,IAAI,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QAEzB,OAAO;QACP,MAAM,IAAI,GAAG,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAEzB,SAAS;QACT,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;QAE3B,MAAM;QACN,MAAM,GAAG,GAAG,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEnD,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,MAAM,EAAE,MAAM,CAAC,KAAK;YACpB,GAAG,EAAE,GAAG,CAAC,KAAK;SACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,uCAAuC;AAEvC;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,gBAAgB,CACrC,UAAsB,EACtB,IAAe;IAEf,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjE,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,oBAAoB,CACzC,UAAsB,EACtB,IAAe,EACf,OAA8B;IAE9B,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,CAAC,GAAG;QAAE,OAAO,EAAC,GAAG,IAAI,EAAC,CAAC;IAE3B,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,OAAO,eAAe,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACzF,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACrC,MAAM,OAAO,GACZ,UAAU,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,CAAC;YAC3D,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC7B,MAAM,EAAE,UAAU,EAAE,MAAM;YAC1B,OAAO,EAAE,EAAC,MAAM,EAAE,kBAAkB,EAAC;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,EAAC,GAAG,IAAI,EAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAA4B,CAAC;QAE5D,IAAI,OAAO;YAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAEnC,0CAA0C;QAC1C,MAAM,UAAU,GACf,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;YACrD,CAAC,CAAE,IAAI,CAAC,UAAsC;YAC9C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,UAAU,GACf,CAAC,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;YACtD,CAAC,CAAE,IAAI,CAAC,UAAsC;YAC9C,CAAC,CAAC,SAAS,CAAC;YACb,CAAC,UAAU,EAAE,UAAU,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ;gBACnE,CAAC,CAAE,UAAU,CAAC,UAAsC;gBACpD,CAAC,CAAC,SAAS,CAAC,CAAC;QACf,MAAM,OAAO,GACZ,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;YAClD,CAAC,OAAO,UAAU,EAAE,OAAO,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC;YAC/D,SAAS,CAAC;QACX,MAAM,QAAQ,GACb,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;YACpD,CAAC,OAAO,UAAU,EAAE,QAAQ,KAAK,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC;YACjE,SAAS,CAAC;QACX,MAAM,OAAO,GACZ,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;YAClD,CAAC,OAAO,UAAU,EAAE,OAAO,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC;YAC/D,SAAS,CAAC;QAEX,OAAO;YACN,GAAG,IAAI;YACP,GAAG,IAAI;YACP,gEAAgE;YAChE,OAAO;YACP,QAAQ;YACR,OAAO;SACc,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAC,GAAG,IAAI,EAAC,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACI,KAAK,UAAU,qBAAqB,CAC1C,UAAsB,EACtB,KAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgC,CAAC;IAExD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,2BAA2B;IAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;QACJ,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC;KACzB,CAAC,CAAC,CAAC;IAEJ,2BAA2B;IAC3B,IAAI,CAAC;QACJ,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,uBAAuB,CAC5D,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CACtB,CAAC;QAEF,oBAAoB;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAEpC,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpE,MAAM,QAAQ,GAAG,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,kCAAkC;QAClC,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
|