@zoralabs/protocol-sdk 0.11.1 → 0.11.3-COMMENTS.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/.turbo/turbo-build.log +7 -7
- package/CHANGELOG.md +26 -0
- package/dist/index.cjs +155 -91
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -91
- package/dist/index.js.map +1 -1
- package/dist/mint/mint-queries.d.ts +2 -0
- package/dist/mint/mint-queries.d.ts.map +1 -1
- package/dist/mint/subgraph-mint-getter.d.ts +2 -2
- package/dist/mint/subgraph-mint-getter.d.ts.map +1 -1
- package/dist/mint/types.d.ts +18 -4
- package/dist/mint/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/fixtures/mint-query-results.ts +1 -1
- package/src/index.ts +20 -0
- package/src/mint/mint-client.test.ts +41 -13
- package/src/mint/mint-client.ts +6 -2
- package/src/mint/mint-queries.ts +63 -26
- package/src/mint/subgraph-mint-getter.ts +146 -90
- package/src/mint/types.ts +23 -5
- package/src/rewards/rewards-client.test.ts +2 -2
- package/src/secondary/secondary-client.test.ts +10 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IPremintGetter } from "src/premint/premint-api-client";
|
|
2
2
|
import { ContractInfo, Erc20Approval, GetMintCostsParameters, GetMintParameters, GetMintsOfContractParameters, IOnchainMintGetter, MintParametersBase, MintableReturn, OnchainSalesConfigAndTokenInfo, PrepareMint } from "./types";
|
|
3
3
|
import { Address } from "viem";
|
|
4
|
+
import { PremintFromApi } from "src/premint/conversions";
|
|
4
5
|
import { IPublicClient } from "src/types";
|
|
5
6
|
import { AllowListEntry } from "src/allow-list/types";
|
|
6
7
|
export declare function getMint({ params, mintGetter, premintGetter, publicClient, }: {
|
|
@@ -37,6 +38,7 @@ export declare function getMintCosts({ params, allowListEntry, mintGetter, premi
|
|
|
37
38
|
premintGetter: IPremintGetter;
|
|
38
39
|
publicClient: IPublicClient;
|
|
39
40
|
}): Promise<import("./types").MintCosts>;
|
|
41
|
+
export declare function isPrimaryMintActive(premint: Pick<PremintFromApi, "premint">["premint"]): boolean;
|
|
40
42
|
export declare const makeOnchainPrepareMint: (result: OnchainSalesConfigAndTokenInfo) => PrepareMint;
|
|
41
43
|
export declare function getRequiredErc20Approvals(params: MintParametersBase, salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"]): Erc20Approval | undefined;
|
|
42
44
|
//# sourceMappingURL=mint-queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mint-queries.d.ts","sourceRoot":"","sources":["../../src/mint/mint-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,8BAA8B,EAE9B,WAAW,
|
|
1
|
+
{"version":3,"file":"mint-queries.d.ts","sourceRoot":"","sources":["../../src/mint/mint-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,8BAA8B,EAE9B,WAAW,EAIZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAe,MAAM,MAAM,CAAC;AAK5C,OAAO,EACL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,wBAAsB,OAAO,CAAC,EAC5B,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC,cAAc,CAAC,CA0B1B;AACD,wBAAsB,mCAAmC,CAAC,EACxD,aAAa,EACb,UAAU,EACV,aAAa,GACd,EAAE;IACD,aAAa,EAAE,cAAc,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB;;;;;;;GAoBA;AAED,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,4BAA4B,CAAC;IACrC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,cAAc,EAAE,CAAA;CAAE,CAAC,CAsBjE;AAED,wBAAsB,YAAY,CAAC,EACjC,MAAM,EACN,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC/C,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,wCA6BA;AA+CD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,WAKpD;AA2CD,eAAO,MAAM,sBAAsB,WACxB,8BAA8B,KAAG,WAkBzC,CAAC;AA4EJ,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,8BAA8B,CAAC,aAAa,CAAC,GACzD,aAAa,GAAG,SAAS,CAQ3B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Address } from "viem";
|
|
2
2
|
import { ISubgraphQuerier } from "../apis/subgraph-querier";
|
|
3
3
|
import { NetworkConfig } from "src/apis/chain-constants";
|
|
4
|
-
import { IOnchainMintGetter, SaleType,
|
|
4
|
+
import { IOnchainMintGetter, SaleType, GetMintableReturn } from "./types";
|
|
5
5
|
import { TokenQueryResult } from "./subgraph-queries";
|
|
6
6
|
import { SubgraphGetter } from "src/apis/subgraph-getter";
|
|
7
7
|
export declare const getApiNetworkConfigForChain: (chainId: number) => NetworkConfig;
|
|
@@ -13,7 +13,7 @@ export declare class SubgraphMintGetter extends SubgraphGetter implements IOncha
|
|
|
13
13
|
tokenAddress: Address;
|
|
14
14
|
preferredSaleType?: SaleType;
|
|
15
15
|
blockTime: bigint;
|
|
16
|
-
}): Promise<
|
|
16
|
+
}): Promise<GetMintableReturn[]>;
|
|
17
17
|
getContractPremintTokenIds({ tokenAddress, }: {
|
|
18
18
|
tokenAddress: Address;
|
|
19
19
|
}): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph-mint-getter.d.ts","sourceRoot":"","sources":["../../src/mint/subgraph-mint-getter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EACL,kBAAkB,EAClB,QAAQ,
|
|
1
|
+
{"version":3,"file":"subgraph-mint-getter.d.ts","sourceRoot":"","sources":["../../src/mint/subgraph-mint-getter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EACL,kBAAkB,EAClB,QAAQ,EAGR,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAQL,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAO,MAAM,2BAA2B,YAAa,MAAM,KAAG,aAK7D,CAAC;AAuLF,qBAAa,kBACX,SAAQ,cACR,YAAW,kBAAkB;gBAEjB,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,gBAAgB;IAIzD,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC;IAI/D,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CA0B5C;IAEI,mBAAmB,CAAC,EACxB,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;KACnB;IAwBK,0BAA0B,CAAC,EAC/B,YAAY,GACb,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;KACvB;;;;CAcF"}
|
package/dist/mint/types.d.ts
CHANGED
|
@@ -146,16 +146,22 @@ export type PremintSalesConfigAndTokenInfo = {
|
|
|
146
146
|
salesConfig: PremintSaleStrategy;
|
|
147
147
|
} & PremintMintable;
|
|
148
148
|
export type SalesConfigAndTokenInfo = OnchainSalesConfigAndTokenInfo | PremintMintable;
|
|
149
|
+
export type GetMintableReturn = {
|
|
150
|
+
salesConfigAndTokenInfo: OnchainSalesConfigAndTokenInfo;
|
|
151
|
+
secondaryMarketActive: boolean;
|
|
152
|
+
primaryMintActive: boolean;
|
|
153
|
+
primaryMintEnd?: bigint;
|
|
154
|
+
};
|
|
149
155
|
export interface IOnchainMintGetter {
|
|
150
156
|
getMintable(params: {
|
|
151
157
|
tokenAddress: Address;
|
|
152
158
|
tokenId?: GenericTokenIdTypes;
|
|
153
159
|
preferredSaleType?: SaleType;
|
|
154
160
|
blockTime: bigint;
|
|
155
|
-
}): Promise<
|
|
161
|
+
}): Promise<GetMintableReturn>;
|
|
156
162
|
getContractMintable(params: {
|
|
157
163
|
tokenAddress: Address;
|
|
158
|
-
}): Promise<
|
|
164
|
+
}): Promise<GetMintableReturn[]>;
|
|
159
165
|
getContractPremintTokenIds(params: {
|
|
160
166
|
tokenAddress: Address;
|
|
161
167
|
}): Promise<{
|
|
@@ -194,8 +200,16 @@ export type AsyncPrepareMint = (params: MintParametersBase) => Promise<PrepareMi
|
|
|
194
200
|
export type MintableReturn = {
|
|
195
201
|
/** Token information */
|
|
196
202
|
token: SalesConfigAndTokenInfo;
|
|
197
|
-
/**
|
|
203
|
+
/** If the primary mint is active, the end time of the primary mint, if there is an end time */
|
|
204
|
+
primaryMintEnd?: bigint;
|
|
205
|
+
secondaryMarketActive: boolean;
|
|
206
|
+
} & ({
|
|
207
|
+
primaryMintActive: true;
|
|
208
|
+
/** Function that takes a quantity of items to mint and returns a prepared transaction and the costs to mint that quantity. If the primary mint is not active, it will be undefined. */
|
|
198
209
|
prepareMint: PrepareMint;
|
|
199
|
-
}
|
|
210
|
+
} | {
|
|
211
|
+
primaryMintActive: false;
|
|
212
|
+
prepareMint?: undefined;
|
|
213
|
+
});
|
|
200
214
|
export {};
|
|
201
215
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/mint/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mint/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mint/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zoralabs/protocol-sdk",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.3-COMMENTS.0",
|
|
4
4
|
"repository": "https://github.com/ourzora/zora-protocol",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"abitype": "^1.0.2",
|
|
20
|
-
"@zoralabs/protocol-deployments": "^0.3.
|
|
20
|
+
"@zoralabs/protocol-deployments": "^0.3.5-COMMENTS.0"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
23
|
"viem": "^2.13.2"
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"typescript": "^5.2.2",
|
|
38
38
|
"vite": "^4.5.0",
|
|
39
39
|
"vitest": "^2.0.5",
|
|
40
|
-
"@zoralabs/tsconfig": "^0.0.
|
|
40
|
+
"@zoralabs/tsconfig": "^0.0.1"
|
|
41
41
|
},
|
|
42
42
|
"scripts": {
|
|
43
43
|
"build": "pnpm tsup",
|
package/src/index.ts
CHANGED
|
@@ -11,6 +11,26 @@ export * from "./premint/conversions";
|
|
|
11
11
|
export * from "./mint/subgraph-mint-getter";
|
|
12
12
|
|
|
13
13
|
export * from "./mint/mint-client";
|
|
14
|
+
export {
|
|
15
|
+
type MintParameters,
|
|
16
|
+
type GetMintParameters,
|
|
17
|
+
type GetMintsOfContractParameters,
|
|
18
|
+
type MintTypes,
|
|
19
|
+
type SaleType,
|
|
20
|
+
type GetMintCostsParameters,
|
|
21
|
+
type MakeMintParametersArguments,
|
|
22
|
+
type SaleStrategies,
|
|
23
|
+
type ContractInfo,
|
|
24
|
+
type SalesConfigAndTokenInfo,
|
|
25
|
+
type GetMintableReturn,
|
|
26
|
+
type IOnchainMintGetter,
|
|
27
|
+
type MintCosts,
|
|
28
|
+
type Erc20Approval,
|
|
29
|
+
type PrepareMintReturn,
|
|
30
|
+
type MintableReturn,
|
|
31
|
+
type PrepareMint,
|
|
32
|
+
type MintParametersBase,
|
|
33
|
+
} from "./mint/types";
|
|
14
34
|
|
|
15
35
|
export * from "./create/1155-create-helper";
|
|
16
36
|
|
|
@@ -40,7 +40,11 @@ describe("mint-helper", () => {
|
|
|
40
40
|
publicClient,
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
-
const {
|
|
43
|
+
const {
|
|
44
|
+
token: mintable,
|
|
45
|
+
prepareMint,
|
|
46
|
+
primaryMintActive,
|
|
47
|
+
} = await collectorClient.getToken({
|
|
44
48
|
tokenContract: targetContract,
|
|
45
49
|
mintType: "1155",
|
|
46
50
|
tokenId: targetTokenId,
|
|
@@ -51,7 +55,10 @@ describe("mint-helper", () => {
|
|
|
51
55
|
mintable.tokenURI;
|
|
52
56
|
mintable;
|
|
53
57
|
|
|
54
|
-
|
|
58
|
+
expect(primaryMintActive).toBe(true);
|
|
59
|
+
expect(prepareMint).toBeDefined();
|
|
60
|
+
|
|
61
|
+
const { parameters, costs } = prepareMint!({
|
|
55
62
|
minterAccount: creatorAccount,
|
|
56
63
|
quantityToMint: 1,
|
|
57
64
|
});
|
|
@@ -103,14 +110,18 @@ describe("mint-helper", () => {
|
|
|
103
110
|
publicClient,
|
|
104
111
|
});
|
|
105
112
|
|
|
106
|
-
const { prepareMint } = await collectorClient.getToken(
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
113
|
+
const { prepareMint, primaryMintActive } = await collectorClient.getToken(
|
|
114
|
+
{
|
|
115
|
+
tokenContract: targetContract,
|
|
116
|
+
mintType: "721",
|
|
117
|
+
},
|
|
118
|
+
);
|
|
110
119
|
|
|
111
120
|
const quantityToMint = 3n;
|
|
112
121
|
|
|
113
|
-
|
|
122
|
+
expect(primaryMintActive).toBe(true);
|
|
123
|
+
|
|
124
|
+
const { parameters, costs } = prepareMint!({
|
|
114
125
|
minterAccount: creatorAccount,
|
|
115
126
|
mintRecipient: creatorAccount,
|
|
116
127
|
quantityToMint,
|
|
@@ -168,7 +179,7 @@ describe("mint-helper", () => {
|
|
|
168
179
|
address: mockCollector,
|
|
169
180
|
});
|
|
170
181
|
|
|
171
|
-
const { prepareMint } = await minter.getToken({
|
|
182
|
+
const { prepareMint, primaryMintActive } = await minter.getToken({
|
|
172
183
|
mintType: "1155",
|
|
173
184
|
tokenContract: targetContract,
|
|
174
185
|
tokenId: targetTokenId,
|
|
@@ -176,7 +187,10 @@ describe("mint-helper", () => {
|
|
|
176
187
|
|
|
177
188
|
const quantityToMint = 1n;
|
|
178
189
|
|
|
179
|
-
|
|
190
|
+
expect(primaryMintActive).toBe(true);
|
|
191
|
+
expect(prepareMint).toBeDefined();
|
|
192
|
+
|
|
193
|
+
const { parameters, erc20Approval, costs } = prepareMint!({
|
|
180
194
|
minterAccount: mockCollector,
|
|
181
195
|
quantityToMint,
|
|
182
196
|
});
|
|
@@ -271,7 +285,7 @@ describe("mint-helper", () => {
|
|
|
271
285
|
merkleRoot,
|
|
272
286
|
});
|
|
273
287
|
|
|
274
|
-
const { prepareMint } = await collectorClient.getToken({
|
|
288
|
+
const { prepareMint, primaryMintActive } = await collectorClient.getToken({
|
|
275
289
|
mintType: "1155",
|
|
276
290
|
tokenContract: targetContract,
|
|
277
291
|
tokenId,
|
|
@@ -279,6 +293,8 @@ describe("mint-helper", () => {
|
|
|
279
293
|
|
|
280
294
|
const minter = (await walletClient.getAddresses())[0]!;
|
|
281
295
|
|
|
296
|
+
expect(primaryMintActive).toBe(true);
|
|
297
|
+
|
|
282
298
|
await testClient.setBalance({
|
|
283
299
|
address: minter,
|
|
284
300
|
value: parseEther("10"),
|
|
@@ -286,7 +302,7 @@ describe("mint-helper", () => {
|
|
|
286
302
|
|
|
287
303
|
const quantityToMint = allowListEntryResult.allowListEntry!.maxCanMint;
|
|
288
304
|
|
|
289
|
-
const { parameters } = prepareMint({
|
|
305
|
+
const { parameters } = prepareMint!({
|
|
290
306
|
minterAccount: minter,
|
|
291
307
|
quantityToMint,
|
|
292
308
|
mintRecipient: allowListUser,
|
|
@@ -372,6 +388,8 @@ describe("mint-helper", () => {
|
|
|
372
388
|
publicClient,
|
|
373
389
|
});
|
|
374
390
|
|
|
391
|
+
const saleEnd =
|
|
392
|
+
BigInt(Math.round(new Date().getTime() / 1000)) + 1000000n;
|
|
375
393
|
const zoraCreateToken = mockTimedSaleStrategyTokenQueryResult({
|
|
376
394
|
chainId: chain.id,
|
|
377
395
|
contractAddress,
|
|
@@ -380,6 +398,7 @@ describe("mint-helper", () => {
|
|
|
380
398
|
chain.id as keyof typeof new1155ContractVersion
|
|
381
399
|
],
|
|
382
400
|
tokenId: newTokenId,
|
|
401
|
+
saleEnd,
|
|
383
402
|
});
|
|
384
403
|
|
|
385
404
|
const mockQuery = vi.fn<ISubgraphQuerier["query"]>().mockResolvedValue({
|
|
@@ -397,15 +416,24 @@ describe("mint-helper", () => {
|
|
|
397
416
|
|
|
398
417
|
const collector = (await walletClient.getAddresses())[1]!;
|
|
399
418
|
|
|
400
|
-
const {
|
|
419
|
+
const {
|
|
420
|
+
prepareMint,
|
|
421
|
+
primaryMintActive,
|
|
422
|
+
primaryMintEnd,
|
|
423
|
+
secondaryMarketActive,
|
|
424
|
+
} = await collectorClient.getToken({
|
|
401
425
|
mintType: "1155",
|
|
402
426
|
tokenContract: contractAddress,
|
|
403
427
|
tokenId: newTokenId,
|
|
404
428
|
});
|
|
405
429
|
|
|
430
|
+
expect(primaryMintActive).toBe(true);
|
|
431
|
+
expect(secondaryMarketActive).toBe(false);
|
|
432
|
+
expect(primaryMintEnd).toBe(saleEnd);
|
|
433
|
+
|
|
406
434
|
const quantityToMint = 10n;
|
|
407
435
|
|
|
408
|
-
const { parameters: mintParameters, costs } = prepareMint({
|
|
436
|
+
const { parameters: mintParameters, costs } = prepareMint!({
|
|
409
437
|
minterAccount: collector,
|
|
410
438
|
quantityToMint,
|
|
411
439
|
});
|
package/src/mint/mint-client.ts
CHANGED
|
@@ -116,14 +116,18 @@ async function mint({
|
|
|
116
116
|
mintGetter: IOnchainMintGetter;
|
|
117
117
|
premintGetter: IPremintGetter;
|
|
118
118
|
}): Promise<PrepareMintReturn> {
|
|
119
|
-
const { prepareMint } = await getMint({
|
|
119
|
+
const { prepareMint, primaryMintActive } = await getMint({
|
|
120
120
|
params: parameters,
|
|
121
121
|
mintGetter,
|
|
122
122
|
premintGetter,
|
|
123
123
|
publicClient,
|
|
124
124
|
});
|
|
125
125
|
|
|
126
|
-
|
|
126
|
+
if (!primaryMintActive) {
|
|
127
|
+
throw new Error("Primary mint is not active");
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return prepareMint!({
|
|
127
131
|
minterAccount: parameters.minterAccount,
|
|
128
132
|
quantityToMint: parameters.quantityToMint,
|
|
129
133
|
firstMinter: parameters.firstMinter,
|
package/src/mint/mint-queries.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
PrepareMint,
|
|
14
14
|
is1155Mint,
|
|
15
15
|
isOnChainMint,
|
|
16
|
+
GetMintableReturn,
|
|
16
17
|
} from "./types";
|
|
17
18
|
import { Address, zeroAddress } from "viem";
|
|
18
19
|
import {
|
|
@@ -148,7 +149,7 @@ export async function getMintCosts({
|
|
|
148
149
|
if (isOnChainMint(params)) {
|
|
149
150
|
const tokenId = is1155Mint(params) ? params.tokenId : undefined;
|
|
150
151
|
const blockTime = (await publicClient.getBlock()).timestamp;
|
|
151
|
-
const salesConfigAndTokenInfo = await mintGetter.getMintable({
|
|
152
|
+
const { salesConfigAndTokenInfo } = await mintGetter.getMintable({
|
|
152
153
|
tokenId,
|
|
153
154
|
tokenAddress: collection,
|
|
154
155
|
blockTime,
|
|
@@ -219,6 +220,13 @@ async function getPremintsOfContractMintable({
|
|
|
219
220
|
});
|
|
220
221
|
}
|
|
221
222
|
|
|
223
|
+
export function isPrimaryMintActive(
|
|
224
|
+
premint: Pick<PremintFromApi, "premint">["premint"],
|
|
225
|
+
) {
|
|
226
|
+
const currentTime = new Date().getTime() / 1000;
|
|
227
|
+
|
|
228
|
+
return premint.premintConfig.tokenConfig.mintStart < currentTime;
|
|
229
|
+
}
|
|
222
230
|
/** Parsing */
|
|
223
231
|
|
|
224
232
|
function parsePremint({
|
|
@@ -282,33 +290,49 @@ export const makeOnchainPrepareMint =
|
|
|
282
290
|
};
|
|
283
291
|
};
|
|
284
292
|
|
|
285
|
-
function toMintableReturn(
|
|
286
|
-
result
|
|
287
|
-
)
|
|
288
|
-
|
|
293
|
+
function toMintableReturn(result: GetMintableReturn): MintableReturn {
|
|
294
|
+
const primaryMintActive = result.primaryMintActive;
|
|
295
|
+
if (!primaryMintActive) {
|
|
296
|
+
return {
|
|
297
|
+
token: result.salesConfigAndTokenInfo,
|
|
298
|
+
primaryMintActive,
|
|
299
|
+
primaryMintEnd: result.primaryMintEnd,
|
|
300
|
+
secondaryMarketActive: result.secondaryMarketActive,
|
|
301
|
+
prepareMint: undefined,
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
return {
|
|
305
|
+
token: result.salesConfigAndTokenInfo,
|
|
306
|
+
primaryMintActive,
|
|
307
|
+
primaryMintEnd: result.primaryMintEnd,
|
|
308
|
+
secondaryMarketActive: result.secondaryMarketActive,
|
|
309
|
+
prepareMint: makeOnchainPrepareMint(result.salesConfigAndTokenInfo),
|
|
310
|
+
};
|
|
289
311
|
}
|
|
290
312
|
|
|
291
|
-
const makePremintPrepareMint =
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
313
|
+
const makePremintPrepareMint = (
|
|
314
|
+
mintable: PremintSalesConfigAndTokenInfo,
|
|
315
|
+
mintFee: bigint,
|
|
316
|
+
premint: Pick<
|
|
317
|
+
PremintFromApi,
|
|
318
|
+
"premint" | "signer" | "collectionAddress" | "collection" | "signature"
|
|
319
|
+
>,
|
|
320
|
+
): PrepareMint => {
|
|
321
|
+
return (params: MintParametersBase) => {
|
|
322
|
+
return {
|
|
323
|
+
parameters: buildPremintMintCall({
|
|
324
|
+
mintArguments: params,
|
|
325
|
+
mintFee,
|
|
326
|
+
premint,
|
|
327
|
+
}),
|
|
328
|
+
costs: parseMintCosts({
|
|
329
|
+
quantityToMint: BigInt(params.quantityToMint),
|
|
330
|
+
salesConfig: mintable.salesConfig,
|
|
331
|
+
allowListEntry: params.allowListEntry,
|
|
332
|
+
}),
|
|
333
|
+
};
|
|
334
|
+
};
|
|
335
|
+
};
|
|
312
336
|
|
|
313
337
|
function toPremintMintReturn({
|
|
314
338
|
premint,
|
|
@@ -322,11 +346,24 @@ function toPremintMintReturn({
|
|
|
322
346
|
}): MintableReturn {
|
|
323
347
|
const mintable = parsePremint({ premint, mintFee });
|
|
324
348
|
|
|
349
|
+
const primaryMintActive = isPrimaryMintActive(premint.premint);
|
|
350
|
+
|
|
351
|
+
if (!primaryMintActive) {
|
|
352
|
+
return {
|
|
353
|
+
token: mintable,
|
|
354
|
+
primaryMintActive,
|
|
355
|
+
prepareMint: undefined,
|
|
356
|
+
secondaryMarketActive: false,
|
|
357
|
+
};
|
|
358
|
+
}
|
|
325
359
|
return {
|
|
326
360
|
token: mintable,
|
|
361
|
+
primaryMintActive,
|
|
362
|
+
secondaryMarketActive: false,
|
|
327
363
|
prepareMint: makePremintPrepareMint(mintable, mintFee, premint),
|
|
328
364
|
};
|
|
329
365
|
}
|
|
366
|
+
|
|
330
367
|
export function getRequiredErc20Approvals(
|
|
331
368
|
params: MintParametersBase,
|
|
332
369
|
salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"],
|