@flaunch/sdk 0.1.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/LICENSE +9 -0
- package/README.md +315 -0
- package/dist/abi/FairLaunch.d.ts +364 -0
- package/dist/abi/FairLaunch.d.ts.map +1 -0
- package/dist/abi/FastFlaunchZap.d.ts +75 -0
- package/dist/abi/FastFlaunchZap.d.ts.map +1 -0
- package/dist/abi/Flaunch.d.ts +832 -0
- package/dist/abi/Flaunch.d.ts.map +1 -0
- package/dist/abi/FlaunchPositionManager.d.ts +2030 -0
- package/dist/abi/FlaunchPositionManager.d.ts.map +1 -0
- package/dist/abi/Memecoin.d.ts +743 -0
- package/dist/abi/Memecoin.d.ts.map +1 -0
- package/dist/abi/Permit2.d.ts +701 -0
- package/dist/abi/Permit2.d.ts.map +1 -0
- package/dist/abi/PoolManager.d.ts +1057 -0
- package/dist/abi/PoolManager.d.ts.map +1 -0
- package/dist/abi/Quoter.d.ts +486 -0
- package/dist/abi/Quoter.d.ts.map +1 -0
- package/dist/abi/UniversalRouter.d.ts +342 -0
- package/dist/abi/UniversalRouter.d.ts.map +1 -0
- package/dist/abi/index.cjs +3023 -0
- package/dist/abi/index.cjs.map +1 -0
- package/dist/abi/index.d.ts +6 -0
- package/dist/abi/index.d.ts.map +1 -0
- package/dist/abi/index.js +3015 -0
- package/dist/abi/index.js.map +1 -0
- package/dist/addresses/index.cjs +5334 -0
- package/dist/addresses/index.cjs.map +1 -0
- package/dist/addresses/index.js +5321 -0
- package/dist/addresses/index.js.map +1 -0
- package/dist/addresses.d.ts +12 -0
- package/dist/addresses.d.ts.map +1 -0
- package/dist/clients/FairLaunchClient.d.ts +21 -0
- package/dist/clients/FairLaunchClient.d.ts.map +1 -0
- package/dist/clients/FastFlaunchClient.d.ts +25 -0
- package/dist/clients/FastFlaunchClient.d.ts.map +1 -0
- package/dist/clients/FlaunchClient.d.ts +10 -0
- package/dist/clients/FlaunchClient.d.ts.map +1 -0
- package/dist/clients/FlaunchPositionManagerClient.d.ts +89 -0
- package/dist/clients/FlaunchPositionManagerClient.d.ts.map +1 -0
- package/dist/clients/MemecoinClient.d.ts +12 -0
- package/dist/clients/MemecoinClient.d.ts.map +1 -0
- package/dist/clients/Permit2Client.d.ts +13 -0
- package/dist/clients/Permit2Client.d.ts.map +1 -0
- package/dist/clients/PoolManagerClient.d.ts +32 -0
- package/dist/clients/PoolManagerClient.d.ts.map +1 -0
- package/dist/clients/QuoterClient.d.ts +12 -0
- package/dist/clients/QuoterClient.d.ts.map +1 -0
- package/dist/helpers/hex.d.ts +4 -0
- package/dist/helpers/hex.d.ts.map +1 -0
- package/dist/helpers/index.cjs +191 -0
- package/dist/helpers/index.cjs.map +1 -0
- package/dist/helpers/index.d.ts +3 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/index.js +177 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/helpers/ipfs.d.ts +47 -0
- package/dist/helpers/ipfs.d.ts.map +1 -0
- package/dist/hooks/FlaunchPositionManagerHooks.d.ts +12 -0
- package/dist/hooks/FlaunchPositionManagerHooks.d.ts.map +1 -0
- package/dist/hooks/index.cjs +69 -0
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +64 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/index.cjs.js +11498 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.esm.js +11466 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/index.umd.js +2 -0
- package/dist/index.umd.js.map +1 -0
- package/dist/sdk/FlaunchSDK.d.ts +121 -0
- package/dist/sdk/FlaunchSDK.d.ts.map +1 -0
- package/dist/types.d.ts +34 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/univ4.d.ts +20 -0
- package/dist/utils/univ4.d.ts.map +1 -0
- package/dist/utils/universalRouter.d.ts +74 -0
- package/dist/utils/universalRouter.d.ts.map +1 -0
- package/package.json +88 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Addresses } from "./types";
|
|
2
|
+
export declare const FlaunchPositionManagerAddress: Addresses;
|
|
3
|
+
export declare const FLETHAddress: Addresses;
|
|
4
|
+
export declare const FLETHHooksAddress: Addresses;
|
|
5
|
+
export declare const FairLaunchAddress: Addresses;
|
|
6
|
+
export declare const FlaunchAddress: Addresses;
|
|
7
|
+
export declare const FastFlaunchZapAddress: Addresses;
|
|
8
|
+
export declare const PoolManagerAddress: Addresses;
|
|
9
|
+
export declare const UniversalRouterAddress: Addresses;
|
|
10
|
+
export declare const QuoterAddress: Addresses;
|
|
11
|
+
export declare const Permit2Address: Addresses;
|
|
12
|
+
//# sourceMappingURL=addresses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,eAAO,MAAM,6BAA6B,EAAE,SAG3C,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,SAG1B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,SAG/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,SAG/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAG5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,SAGnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,SAGhC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,SAGpC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,SAG3B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAG5B,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift, type HexString } from "@delvtech/drift";
|
|
2
|
+
import { FairLaunchAbi } from "../abi/FairLaunch";
|
|
3
|
+
export type FairLaunchABI = typeof FairLaunchAbi;
|
|
4
|
+
export declare class ReadFairLaunch {
|
|
5
|
+
contract: ReadContract<FairLaunchABI>;
|
|
6
|
+
constructor(address: Address, drift?: Drift);
|
|
7
|
+
fairLaunchInfo({ poolId }: {
|
|
8
|
+
poolId: HexString;
|
|
9
|
+
}): Promise<{
|
|
10
|
+
startsAt: bigint;
|
|
11
|
+
endsAt: bigint;
|
|
12
|
+
initialTick: number;
|
|
13
|
+
revenue: bigint;
|
|
14
|
+
supply: bigint;
|
|
15
|
+
closed: boolean;
|
|
16
|
+
}>;
|
|
17
|
+
isFairLaunchActive({ poolId }: {
|
|
18
|
+
poolId: HexString;
|
|
19
|
+
}): Promise<boolean>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=FairLaunchClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FairLaunchClient.d.ts","sourceRoot":"","sources":["../../src/clients/FairLaunchClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAIV,KAAK,SAAS,EAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC;AAEjD,qBAAa,cAAc;IACzB,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAE1B,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAW1D,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE;;;;;;;;IAM1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE;CAY3D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift, type ReadWriteContract, type ReadWriteAdapter } from "@delvtech/drift";
|
|
2
|
+
import { FastFlaunchZapAbi } from "../abi/FastFlaunchZap";
|
|
3
|
+
import { IPFSParams } from "../types";
|
|
4
|
+
export type FastFlaunchZapABI = typeof FastFlaunchZapAbi;
|
|
5
|
+
export declare class ReadFastFlaunchZap {
|
|
6
|
+
contract: ReadContract<FastFlaunchZapABI>;
|
|
7
|
+
drift: Drift;
|
|
8
|
+
constructor(address: Address, drift?: Drift);
|
|
9
|
+
}
|
|
10
|
+
export interface FastFlaunchParams {
|
|
11
|
+
name: string;
|
|
12
|
+
symbol: string;
|
|
13
|
+
tokenUri: string;
|
|
14
|
+
creator: Address;
|
|
15
|
+
creatorFeeAllocationPercent: number;
|
|
16
|
+
}
|
|
17
|
+
export interface FastFlaunchIPFSParams extends Omit<FastFlaunchParams, "tokenUri">, IPFSParams {
|
|
18
|
+
}
|
|
19
|
+
export declare class ReadWriteFastFlaunchZap extends ReadFastFlaunchZap {
|
|
20
|
+
contract: ReadWriteContract<FastFlaunchZapABI>;
|
|
21
|
+
constructor(address: Address, drift?: Drift<ReadWriteAdapter>);
|
|
22
|
+
fastFlaunch({ name, symbol, tokenUri, creator, creatorFeeAllocationPercent, }: FastFlaunchParams): Promise<`0x${string}`>;
|
|
23
|
+
fastFlaunchIPFS({ name, symbol, creator, creatorFeeAllocationPercent, metadata, pinataConfig, }: FastFlaunchIPFSParams): Promise<`0x${string}`>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=FastFlaunchClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FastFlaunchClient.d.ts","sourceRoot":"","sources":["../../src/clients/FastFlaunchClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAEV,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD,qBAAa,kBAAkB;IAC7B,QAAQ,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;CAU3D;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,qBACf,SAAQ,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,EACzC,UAAU;CAAG;AAEjB,qBAAa,uBAAwB,SAAQ,kBAAkB;IACrD,QAAQ,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;gBAGrD,OAAO,EAAE,OAAO,EAChB,KAAK,GAAE,KAAK,CAAC,gBAAgB,CAAiB;IAKhD,WAAW,CAAC,EACV,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,2BAA2B,GAC5B,EAAE,iBAAiB;IAcd,eAAe,CAAC,EACpB,IAAI,EACJ,MAAM,EACN,OAAO,EACP,2BAA2B,EAC3B,QAAQ,EACR,YAAY,GACb,EAAE,qBAAqB;CAczB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift } from "@delvtech/drift";
|
|
2
|
+
import { FlaunchAbi } from "../abi/Flaunch";
|
|
3
|
+
export type FlaunchABI = typeof FlaunchAbi;
|
|
4
|
+
export declare class ReadFlaunch {
|
|
5
|
+
contract: ReadContract<FlaunchABI>;
|
|
6
|
+
constructor(address: Address, drift?: Drift);
|
|
7
|
+
tokenId(coinAddress: Address): Promise<bigint>;
|
|
8
|
+
tokenURI(tokenId: bigint): Promise<string>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=FlaunchClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FlaunchClient.d.ts","sourceRoot":"","sources":["../../src/clients/FlaunchClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAMX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC;AAE3C,qBAAa,WAAW;IACtB,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;gBAEvB,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAW1D,OAAO,CAAC,WAAW,EAAE,OAAO;IAM5B,QAAQ,CAAC,OAAO,EAAE,MAAM;CAKzB"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift, type EventLog, type ReadWriteContract, type ReadWriteAdapter, HexString } from "@delvtech/drift";
|
|
2
|
+
import { FlaunchPositionManagerAbi } from "../abi/FlaunchPositionManager";
|
|
3
|
+
import { IPFSParams } from "../types";
|
|
4
|
+
export type FlaunchPositionManagerABI = typeof FlaunchPositionManagerAbi;
|
|
5
|
+
export type PoolCreatedLog = EventLog<FlaunchPositionManagerABI, "PoolCreated"> & {
|
|
6
|
+
timestamp: number;
|
|
7
|
+
};
|
|
8
|
+
export type PoolCreatedLogs = PoolCreatedLog[];
|
|
9
|
+
export interface WatchPoolCreatedParams {
|
|
10
|
+
onPoolCreated: ({ logs, isFetchingFromStart, }: {
|
|
11
|
+
logs: PoolCreatedLogs;
|
|
12
|
+
isFetchingFromStart: boolean;
|
|
13
|
+
}) => void;
|
|
14
|
+
startBlockNumber?: bigint;
|
|
15
|
+
}
|
|
16
|
+
export type BaseSwapLog = EventLog<FlaunchPositionManagerABI, "PoolSwap"> & {
|
|
17
|
+
timestamp: number;
|
|
18
|
+
};
|
|
19
|
+
export type BuySwapLog = BaseSwapLog & {
|
|
20
|
+
type: "BUY";
|
|
21
|
+
delta: {
|
|
22
|
+
coinsBought: bigint;
|
|
23
|
+
flETHSold: bigint;
|
|
24
|
+
fees: {
|
|
25
|
+
isInFLETH: boolean;
|
|
26
|
+
amount: bigint;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export type SellSwapLog = BaseSwapLog & {
|
|
31
|
+
type: "SELL";
|
|
32
|
+
delta: {
|
|
33
|
+
coinsSold: bigint;
|
|
34
|
+
flETHBought: bigint;
|
|
35
|
+
fees: {
|
|
36
|
+
isInFLETH: boolean;
|
|
37
|
+
amount: bigint;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
export type PoolSwapLog = BuySwapLog | SellSwapLog | BaseSwapLog;
|
|
42
|
+
export type PoolSwapLogs = PoolSwapLog[];
|
|
43
|
+
export interface WatchPoolSwapParams<TFLETHIsCurrencyZero extends boolean | undefined = undefined> {
|
|
44
|
+
onPoolSwap: ({ logs, isFetchingFromStart, }: {
|
|
45
|
+
logs: TFLETHIsCurrencyZero extends boolean ? (BuySwapLog | SellSwapLog)[] : BaseSwapLog[];
|
|
46
|
+
isFetchingFromStart: boolean;
|
|
47
|
+
}) => void;
|
|
48
|
+
flETHIsCurrencyZero?: TFLETHIsCurrencyZero;
|
|
49
|
+
startBlockNumber?: bigint;
|
|
50
|
+
filterByPoolId?: HexString;
|
|
51
|
+
}
|
|
52
|
+
export interface FlaunchParams {
|
|
53
|
+
flaunchingETHFees: bigint;
|
|
54
|
+
name: string;
|
|
55
|
+
symbol: string;
|
|
56
|
+
tokenUri: string;
|
|
57
|
+
fairLaunchPercent: number;
|
|
58
|
+
initialMarketCapUSD: number;
|
|
59
|
+
creator: Address;
|
|
60
|
+
creatorFeeAllocationPercent: number;
|
|
61
|
+
flaunchAt?: bigint;
|
|
62
|
+
premineAmount?: bigint;
|
|
63
|
+
}
|
|
64
|
+
export interface FlaunchIPFSParams extends Omit<FlaunchParams, "tokenUri">, IPFSParams {
|
|
65
|
+
}
|
|
66
|
+
export declare class ReadFlaunchPositionManager {
|
|
67
|
+
contract: ReadContract<FlaunchPositionManagerABI>;
|
|
68
|
+
drift: Drift;
|
|
69
|
+
pollPoolCreatedNow?: () => Promise<void>;
|
|
70
|
+
pollPoolSwapNow?: () => Promise<void>;
|
|
71
|
+
TOTAL_SUPPLY: bigint;
|
|
72
|
+
constructor(address: Address, drift?: Drift);
|
|
73
|
+
isValidCoin(coinAddress: Address): Promise<boolean>;
|
|
74
|
+
watchPoolCreated({ onPoolCreated, startBlockNumber, }: WatchPoolCreatedParams): Promise<{
|
|
75
|
+
cleanup: () => void;
|
|
76
|
+
pollPoolCreatedNow: () => Promise<void>;
|
|
77
|
+
}>;
|
|
78
|
+
watchPoolSwap<T extends boolean | undefined = undefined>({ onPoolSwap, flETHIsCurrencyZero, startBlockNumber, filterByPoolId, }: WatchPoolSwapParams<T>): Promise<{
|
|
79
|
+
cleanup: () => void;
|
|
80
|
+
pollPoolSwapNow: () => Promise<void>;
|
|
81
|
+
}>;
|
|
82
|
+
}
|
|
83
|
+
export declare class ReadWriteFlaunchPositionManager extends ReadFlaunchPositionManager {
|
|
84
|
+
contract: ReadWriteContract<FlaunchPositionManagerABI>;
|
|
85
|
+
constructor(address: Address, drift?: Drift<ReadWriteAdapter>);
|
|
86
|
+
flaunch({ flaunchingETHFees, name, symbol, tokenUri, fairLaunchPercent, initialMarketCapUSD, creator, creatorFeeAllocationPercent, flaunchAt, premineAmount, }: FlaunchParams): Promise<`0x${string}`>;
|
|
87
|
+
flaunchIPFS({ flaunchingETHFees, name, symbol, fairLaunchPercent, initialMarketCapUSD, creator, creatorFeeAllocationPercent, flaunchAt, premineAmount, metadata, pinataConfig, }: FlaunchIPFSParams): Promise<`0x${string}`>;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=FlaunchPositionManagerClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FlaunchPositionManagerClient.d.ts","sourceRoot":"","sources":["../../src/clients/FlaunchPositionManagerClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift } from "@delvtech/drift";
|
|
2
|
+
import { MemecoinAbi } from "../abi/Memecoin";
|
|
3
|
+
export type MemecoinABI = typeof MemecoinAbi;
|
|
4
|
+
export declare class ReadMemecoin {
|
|
5
|
+
contract: ReadContract<MemecoinABI>;
|
|
6
|
+
constructor(address: Address, drift?: Drift);
|
|
7
|
+
name(): Promise<string>;
|
|
8
|
+
symbol(): Promise<string>;
|
|
9
|
+
tokenURI(): Promise<string>;
|
|
10
|
+
balanceOf(user: Address): Promise<bigint>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=MemecoinClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemecoinClient.d.ts","sourceRoot":"","sources":["../../src/clients/MemecoinClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAMX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAE7C,qBAAa,YAAY;IACvB,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;gBAExB,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAW1D,IAAI;IAIJ,MAAM;IAIN,QAAQ;IAIR,SAAS,CAAC,IAAI,EAAE,OAAO;CAKxB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift } from "@delvtech/drift";
|
|
2
|
+
import { Permit2Abi } from "../abi/Permit2";
|
|
3
|
+
export type Permit2ABI = typeof Permit2Abi;
|
|
4
|
+
export declare class ReadPermit2 {
|
|
5
|
+
contract: ReadContract<Permit2ABI>;
|
|
6
|
+
constructor(address: Address, drift?: Drift);
|
|
7
|
+
allowance(owner: Address, coinAddress: Address, spender: Address): Promise<{
|
|
8
|
+
nonce: number;
|
|
9
|
+
amount: bigint;
|
|
10
|
+
expiration: number;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=Permit2Client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Permit2Client.d.ts","sourceRoot":"","sources":["../../src/clients/Permit2Client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAMX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC;AAE3C,qBAAa,WAAW;IACtB,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;gBAEvB,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAWpD,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;;;;;CAOvE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift, type HexString } from "@delvtech/drift";
|
|
2
|
+
import { PoolManagerAbi } from "../abi/PoolManager";
|
|
3
|
+
export type PoolManagerABI = typeof PoolManagerAbi;
|
|
4
|
+
export interface PositionInfoParams {
|
|
5
|
+
poolId: HexString;
|
|
6
|
+
owner: Address;
|
|
7
|
+
tickLower: number;
|
|
8
|
+
tickUpper: number;
|
|
9
|
+
salt: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class ReadPoolManager {
|
|
12
|
+
contract: ReadContract<PoolManagerABI>;
|
|
13
|
+
constructor(address: Address, drift?: Drift);
|
|
14
|
+
poolStateSlot({ poolId }: {
|
|
15
|
+
poolId: HexString;
|
|
16
|
+
}): `0x${string}`;
|
|
17
|
+
poolSlot0({ poolId }: {
|
|
18
|
+
poolId: HexString;
|
|
19
|
+
}): Promise<{
|
|
20
|
+
sqrtPriceX96: bigint;
|
|
21
|
+
tick: number;
|
|
22
|
+
protocolFee: number;
|
|
23
|
+
lpFee: number;
|
|
24
|
+
}>;
|
|
25
|
+
positionInfo({ poolId, owner, tickLower, tickUpper, salt, }: PositionInfoParams): Promise<{
|
|
26
|
+
liquidity: bigint;
|
|
27
|
+
feeGrowthInside0LastX128: bigint;
|
|
28
|
+
feeGrowthInside1LastX128: bigint;
|
|
29
|
+
}>;
|
|
30
|
+
getStateSlot(stateSlot: HexString): Promise<HexString>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=PoolManagerClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PoolManagerClient.d.ts","sourceRoot":"","sources":["../../src/clients/PoolManagerClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAIV,KAAK,SAAS,EAEf,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,eAAe;IAC1B,QAAQ,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;gBAE3B,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAW1D,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE;IAQzC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE;;;;;;IAgD3C,YAAY,CAAC,EACjB,MAAM,EACN,KAAK,EACL,SAAS,EACT,SAAS,EACT,IAAI,GACL,EAAE,kBAAkB,GAAG,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB,EAAE,MAAM,CAAC;QACjC,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;IAwCI,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;CAQ7D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReadContract, type Address, type Drift } from "@delvtech/drift";
|
|
2
|
+
import { QuoterAbi } from "../abi/Quoter";
|
|
3
|
+
export type QuoterABI = typeof QuoterAbi;
|
|
4
|
+
export declare class ReadQuoter {
|
|
5
|
+
chainId: number;
|
|
6
|
+
contract: ReadContract<QuoterABI>;
|
|
7
|
+
constructor(chainId: number, address: Address, drift?: Drift);
|
|
8
|
+
getSellQuoteExactInput(coinAddress: Address, amountIn: bigint): Promise<bigint>;
|
|
9
|
+
getBuyQuoteExactInput(coinAddress: Address, ethIn: bigint): Promise<bigint>;
|
|
10
|
+
getBuyQuoteExactOutput(coinAddress: Address, coinOut: bigint): Promise<bigint>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=QuoterClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuoterClient.d.ts","sourceRoot":"","sources":["../../src/clients/QuoterClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EAMX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAS1C,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;AAEzC,qBAAa,UAAU;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;gBAEtB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,KAAqB;IAYrE,sBAAsB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IA2B7D,qBAAqB,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;IA2BzD,sBAAsB,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;CA0BnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hex.d.ts","sourceRoot":"","sources":["../../src/helpers/hex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,GAAG,EAAoB,MAAM,MAAM,CAAC;AAElE,eAAO,MAAM,gBAAgB,GAAI,OAAO,GAAG,WAE1C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,kBAK7C,CAAC"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var viem = require('viem');
|
|
6
|
+
var axios = require('axios');
|
|
7
|
+
|
|
8
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
|
+
|
|
10
|
+
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
11
|
+
|
|
12
|
+
const bytes32ToUint256 = (value) => {
|
|
13
|
+
return viem.hexToBigInt(value);
|
|
14
|
+
};
|
|
15
|
+
const uint256ToBytes32 = (value) => {
|
|
16
|
+
return viem.pad(viem.encodeAbiParameters([{ type: "uint256", name: "value" }], [value]), { size: 32, dir: "right" });
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const resolveIPFS = (value) => {
|
|
20
|
+
if (value.startsWith("ipfs://")) {
|
|
21
|
+
return `https://gateway.pinata.cloud/ipfs/${value.slice(7)}`;
|
|
22
|
+
}
|
|
23
|
+
return value;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Uploads a file to IPFS using Pinata
|
|
27
|
+
* @param params Configuration and file data
|
|
28
|
+
* @returns Upload response with CID and other details
|
|
29
|
+
*/
|
|
30
|
+
const uploadFileToIPFS = async (params) => {
|
|
31
|
+
try {
|
|
32
|
+
const formData = new FormData();
|
|
33
|
+
formData.append("file", params.file);
|
|
34
|
+
const pinataMetadata = {
|
|
35
|
+
name: params.name || null,
|
|
36
|
+
keyvalues: params.metadata || {},
|
|
37
|
+
};
|
|
38
|
+
formData.append("pinataMetadata", JSON.stringify(pinataMetadata));
|
|
39
|
+
const pinataOptions = {
|
|
40
|
+
cidVersion: 1,
|
|
41
|
+
};
|
|
42
|
+
formData.append("pinataOptions", JSON.stringify(pinataOptions));
|
|
43
|
+
const response = await axios__default["default"].post("https://api.pinata.cloud/pinning/pinFileToIPFS", formData, {
|
|
44
|
+
headers: {
|
|
45
|
+
Authorization: `Bearer ${params.pinataConfig.jwt}`,
|
|
46
|
+
"Content-Type": "multipart/form-data",
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
return {
|
|
50
|
+
IpfsHash: response.data.IpfsHash,
|
|
51
|
+
PinSize: response.data.PinSize,
|
|
52
|
+
Timestamp: response.data.Timestamp,
|
|
53
|
+
isDuplicate: response.data.isDuplicate || false,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
if (axios__default["default"].isAxiosError(error)) {
|
|
58
|
+
throw new Error(`Failed to upload file to IPFS: ${error.response?.data?.message || error.message}`);
|
|
59
|
+
}
|
|
60
|
+
throw error;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Uploads JSON data to IPFS using Pinata
|
|
65
|
+
* @param params Configuration and JSON data
|
|
66
|
+
* @returns Upload response with CID and other details
|
|
67
|
+
*/
|
|
68
|
+
const uploadJsonToIPFS = async (params) => {
|
|
69
|
+
try {
|
|
70
|
+
const requestBody = {
|
|
71
|
+
pinataOptions: {
|
|
72
|
+
cidVersion: 1,
|
|
73
|
+
},
|
|
74
|
+
pinataMetadata: {
|
|
75
|
+
name: params.name || null,
|
|
76
|
+
keyvalues: params.metadata || {},
|
|
77
|
+
},
|
|
78
|
+
pinataContent: params.json,
|
|
79
|
+
};
|
|
80
|
+
const response = await axios__default["default"].post("https://api.pinata.cloud/pinning/pinJSONToIPFS", requestBody, {
|
|
81
|
+
headers: {
|
|
82
|
+
Authorization: `Bearer ${params.pinataConfig.jwt}`,
|
|
83
|
+
"Content-Type": "application/json",
|
|
84
|
+
},
|
|
85
|
+
});
|
|
86
|
+
return {
|
|
87
|
+
IpfsHash: response.data.IpfsHash,
|
|
88
|
+
PinSize: response.data.PinSize,
|
|
89
|
+
Timestamp: response.data.Timestamp,
|
|
90
|
+
isDuplicate: response.data.isDuplicate || false,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
if (axios__default["default"].isAxiosError(error)) {
|
|
95
|
+
throw new Error(`Failed to upload JSON to IPFS: ${error.response?.data?.message || error.message}`);
|
|
96
|
+
}
|
|
97
|
+
throw error;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Uploads a base64 image to IPFS using Pinata
|
|
102
|
+
* @param params Configuration and base64 image data
|
|
103
|
+
* @returns Upload response with CID and other details
|
|
104
|
+
*/
|
|
105
|
+
const uploadImageToIPFS = async (params) => {
|
|
106
|
+
try {
|
|
107
|
+
const formData = new FormData();
|
|
108
|
+
// Convert base64 to Blob and then to File
|
|
109
|
+
// Remove data URL prefix if present (e.g., "data:image/jpeg;base64,")
|
|
110
|
+
const base64Data = params.base64Image.split(",")[1] || params.base64Image;
|
|
111
|
+
const byteCharacters = atob(base64Data);
|
|
112
|
+
const byteArrays = [];
|
|
113
|
+
for (let offset = 0; offset < byteCharacters.length; offset += 1024) {
|
|
114
|
+
const slice = byteCharacters.slice(offset, offset + 1024);
|
|
115
|
+
const byteNumbers = new Array(slice.length);
|
|
116
|
+
for (let i = 0; i < slice.length; i++) {
|
|
117
|
+
byteNumbers[i] = slice.charCodeAt(i);
|
|
118
|
+
}
|
|
119
|
+
const byteArray = new Uint8Array(byteNumbers);
|
|
120
|
+
byteArrays.push(byteArray);
|
|
121
|
+
}
|
|
122
|
+
// Detect mime type from base64 string
|
|
123
|
+
let mimeType = "image/png"; // default
|
|
124
|
+
if (params.base64Image.startsWith("data:")) {
|
|
125
|
+
mimeType = params.base64Image.split(";")[0].split(":")[1];
|
|
126
|
+
}
|
|
127
|
+
const blob = new Blob(byteArrays, { type: mimeType });
|
|
128
|
+
const fileName = params.name || `image.${mimeType.split("/")[1]}`;
|
|
129
|
+
const file = new File([blob], fileName, { type: mimeType });
|
|
130
|
+
formData.append("file", file);
|
|
131
|
+
const pinataMetadata = {
|
|
132
|
+
name: params.name || null,
|
|
133
|
+
keyvalues: params.metadata || {},
|
|
134
|
+
};
|
|
135
|
+
formData.append("pinataMetadata", JSON.stringify(pinataMetadata));
|
|
136
|
+
const pinataOptions = {
|
|
137
|
+
cidVersion: 1,
|
|
138
|
+
};
|
|
139
|
+
formData.append("pinataOptions", JSON.stringify(pinataOptions));
|
|
140
|
+
const response = await axios__default["default"].post("https://api.pinata.cloud/pinning/pinFileToIPFS", formData, {
|
|
141
|
+
headers: {
|
|
142
|
+
Authorization: `Bearer ${params.pinataConfig.jwt}`,
|
|
143
|
+
"Content-Type": "multipart/form-data",
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
return {
|
|
147
|
+
IpfsHash: response.data.IpfsHash,
|
|
148
|
+
PinSize: response.data.PinSize,
|
|
149
|
+
Timestamp: response.data.Timestamp,
|
|
150
|
+
isDuplicate: response.data.isDuplicate || false,
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
if (axios__default["default"].isAxiosError(error)) {
|
|
155
|
+
throw new Error(`Failed to upload image to IPFS: ${error.response?.data?.message || error.message}`);
|
|
156
|
+
}
|
|
157
|
+
throw error;
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
const generateTokenUri = async (name, params) => {
|
|
161
|
+
// 1. upload image to IPFS
|
|
162
|
+
const imageRes = await uploadImageToIPFS({
|
|
163
|
+
pinataConfig: params.pinataConfig,
|
|
164
|
+
base64Image: params.metadata.base64Image,
|
|
165
|
+
});
|
|
166
|
+
// 2. upload metadata to IPFS
|
|
167
|
+
const coinMetadata = {
|
|
168
|
+
name,
|
|
169
|
+
description: params.metadata.description,
|
|
170
|
+
image: `ipfs://${imageRes.IpfsHash}`,
|
|
171
|
+
external_link: params.metadata.websiteUrl,
|
|
172
|
+
collaborators: [],
|
|
173
|
+
discordUrl: params.metadata.discordUrl,
|
|
174
|
+
twitterUrl: params.metadata.twitterUrl,
|
|
175
|
+
telegramUrl: params.metadata.telegramUrl,
|
|
176
|
+
};
|
|
177
|
+
const metadataRes = await uploadJsonToIPFS({
|
|
178
|
+
pinataConfig: params.pinataConfig,
|
|
179
|
+
json: coinMetadata,
|
|
180
|
+
});
|
|
181
|
+
return `ipfs://${metadataRes.IpfsHash}`;
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
exports.bytes32ToUint256 = bytes32ToUint256;
|
|
185
|
+
exports.generateTokenUri = generateTokenUri;
|
|
186
|
+
exports.resolveIPFS = resolveIPFS;
|
|
187
|
+
exports.uint256ToBytes32 = uint256ToBytes32;
|
|
188
|
+
exports.uploadFileToIPFS = uploadFileToIPFS;
|
|
189
|
+
exports.uploadImageToIPFS = uploadImageToIPFS;
|
|
190
|
+
exports.uploadJsonToIPFS = uploadJsonToIPFS;
|
|
191
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../src/helpers/hex.ts","../../../src/helpers/ipfs.ts"],"sourcesContent":[null,null],"names":["hexToBigInt","pad","encodeAbiParameters","axios"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
|